home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 36 / PC Gamer IT CD 36 2-2.iso / SINDEMO / sindemo2.exe / data / base / pak0.pak / maps / bank.scr < prev    next >
Text File  |  1998-09-22  |  129KB  |  4,584 lines

  1. setdialogscript dialog/dialog_bank.scr
  2.  
  3.  
  4. // Game Variables
  5. /////////////////////////////////////////////////////////////////////////////
  6. // game.intro_ground_entrance
  7. // game.intro_billboard_fall
  8. // game.intro_roof_break1
  9. // game.bank_balance
  10.  
  11.  
  12. // Level Variables
  13. /////////////////////////////////////////////////////////////////////////////
  14. level.Skill getcvar skill
  15.  
  16. level.Demo = 1
  17.  
  18. level.StartCinematicSkipped = 0
  19. level.ExitCinematicSkipped = 0
  20.  
  21. level.vault_switch1_position = 1
  22. level.vault_switch2_position = 1
  23. level.VaultCombo1 = 0
  24. level.VaultCombo2 = 0
  25.  
  26. level.BattleThugsKilled = 0
  27.  
  28. level.HostagesSaved = 0
  29. level.HostagesKilled = 0
  30.  
  31. level.description = 0
  32.  
  33. level.ExitDialogComplete = 0
  34.  
  35. // Mission Objective States - 0 not accomplished 1 = success 2 = fail 3 = not available
  36. level.PObjective1 = 0 // Disable Hostile Threat
  37. level.PObjective2 = 0 // Locate Security Office Key
  38. level.PObjective3 = 3 // Gain Access To Security Room
  39. level.PObjective4 = 3 // Gain Access To The Vault
  40. level.PObjective5 = 3 // Capture Mancini
  41. level.SObjective1 = 0 // Unlock All Security Doors
  42. level.SObjective2 = 0 // Minimize Hostage Casualties
  43.  
  44. // Script Initialization
  45. /////////////////////////////////////////////////////////////////////////////
  46. thread init_thread
  47.  
  48. // General
  49. thread roof_break1_thread
  50. thread billboard_thread
  51. thread escalator_thread
  52. thread tele_thread
  53. thread revolvingdoor1_thread
  54. thread revolvingdoor2_thread
  55. thread clock_thread
  56. thread teller1_thread
  57. thread teller2_thread
  58. thread table1_thread
  59. thread vault_thread
  60. thread vault_switch1_thread
  61. thread vault_switch2_thread
  62. thread safety_deposit_drawer_thread
  63. thread receptacle1_thread
  64. thread receptacle2_thread
  65. thread destroys_furniture1_thread
  66. thread destroys_furniture2_thread
  67. thread destroys_furniture3_thread
  68. thread destroys_furniture4_thread
  69. thread plant_break1_thread
  70. thread painting1_thread
  71. thread painting2_thread
  72. thread painting3_thread
  73. thread painting4_thread
  74. thread painting5_thread
  75. thread painting6_thread
  76. thread sign1_thread
  77. thread sign2_thread
  78.  
  79.  
  80. // Characters
  81. thread init_character_items_thread
  82.  
  83. $hostage01 thread hostage01_thread
  84. $hostage02 thread hostage02_thread
  85. $hostage03 thread hostage03_thread
  86. $hostage04 thread hostage04_thread
  87. $hostage05 thread hostage05_thread
  88. $hostage06 thread hostage06_thread
  89. $hostage07 thread hostage07_thread
  90.  
  91. $battle_hc01 thread battle_hc01_thread
  92. $battle_hc02 thread battle_hc02_thread
  93. $battle_thug01 thread battle_thug01_thread
  94. $battle_thug02 thread battle_thug02_thread
  95. $battle_thug03 thread battle_thug03_thread
  96.  
  97. $mancini thread mancini_thread
  98. $mancini_thug03 thread mancini_thug03_thread
  99. $mancini_thug04 thread mancini_thug04_thread
  100. $mancini_thug05 thread mancini_thug05_thread
  101. $mancini_thug06 thread mancini_thug06_thread
  102.  
  103. $hostage1_thug01 thread hostage1_thug01_thread
  104. $hostage1_thug02 thread hostage1_thug02_thread
  105. $hostage1_thug03 thread hostage1_thug03_thread
  106.  
  107. $hostage2_thug01 thread hostage2_thug01_thread
  108. $hostage2_thug02 thread hostage2_thug02_thread
  109. $hostage2_thug03 thread hostage2_thug03_thread
  110.  
  111. //$hostage3_thug01 thread hostage3_thug01_thread
  112. //$hostage3_thug02 thread hostage3_thug02_thread
  113. //$hostage3_thug03 thread hostage3_thug03_thread
  114. //$hostage3_thug04 thread hostage3_thug04_thread
  115.  
  116. $hostage4_thug01 thread hostage4_thug01_thread
  117. $hostage4_thug02 thread hostage4_thug02_thread
  118.  
  119. $securityroom_boss thread securityroom_boss_thread
  120.  
  121. $thug01 thread thug01_thread
  122. $thug02 thread thug02_thread
  123. $thug03 thread thug03_thread
  124. $thug04 thread thug04_thread
  125. $thug05 thread thug05_thread
  126. $thug06 thread thug06_thread
  127.  
  128.  
  129. // Consoles
  130. thread SecMenu_Thread
  131. thread ATM_Setup_Thread
  132.  
  133. end // Script Initialization
  134.  
  135.  
  136. // init_thread:
  137. /////////////////////////////////////////////////////////////////////////////
  138. init_thread:
  139.  
  140. // FIXME:
  141. $hostage3_thug01 remove
  142.  
  143. // Lock security doors
  144. $door_security lock
  145.  
  146. // Setup the revolving doors
  147. $revolvingdoor1 jumpto $revolvingdoor1_start
  148. $revolvingdoor2 jumpto $revolvingdoor2_start
  149.  
  150. // Setup the ATM room stuff
  151. $fountain_spill1 hide
  152. $fountain_spill2 hide
  153.  
  154. // Setup the copter flying away
  155. $hc_copter_rotors bind $hc_copter_parent
  156. $hc_copter bind $hc_copter_parent
  157. wait 0.1
  158.  
  159. $hc_copter_rotors rotateY 540
  160.  
  161. // Setup the ambient fighting sounds
  162. local.Count = 1
  163.  
  164. loop_random_noise_init:
  165. parm.NoiseMaker = local.Count
  166. parm.NumNoiseMakers = 6
  167. thread random_noise_init_thread
  168.  
  169. local.Count += 1
  170. local.Count ifless 7 goto loop_random_noise_init
  171.  
  172. // Setup the repelers
  173. thread repel_init_thread
  174.  
  175. // Setup the teller security gate
  176. $teller_securitygate time 0.1
  177. $teller_securitygate moveUp 144
  178. waitFor $teller_securitygate
  179.  
  180. // Setup the vault combination
  181. level.VaultCombo1 randomint 8
  182. level.VaultCombo1 += 1
  183. level.VaultCombo2 randomint 8
  184. level.VaultCombo2 += 1
  185.  
  186. // Setup cinematics
  187. // DEMO: thread init_start_cinematic_thread
  188. thread init_exit_cinematic_thread
  189.  
  190. // DEMO: remove the start cinematic characters
  191. $start_mancini remove
  192. $start_thug01 remove
  193. $start_thug02 remove
  194. $start_money01 remove
  195. $start_money02 remove
  196. $start_money03 remove
  197.  
  198. Waitforplayer
  199.  
  200. // Play the starting cinematic
  201. // DEMO: thread start_cinematic_thread
  202. // DEMO: waitForThread parm.previousthread
  203.  
  204. wait 2
  205.  
  206. // Start intro dialog and update the mission computer
  207. thread jc_clear_bank_out_dialog_thread
  208. waitForThread parm.previousthread
  209.  
  210. thread bank_start_misscomp_thread
  211.  
  212. end // init_thread
  213.  
  214.  
  215. // random_noise_init_thread:
  216. /////////////////////////////////////////////////////////////////////////////
  217. random_noise_init_thread:
  218. local.NoiseMaker string "$random_noise0"
  219. local.NoiseMaker appendint parm.NoiseMaker
  220.  
  221. loop_random_noise:
  222. level.BattleThugsKilled ifequal 7 goto random_noise_done
  223.  
  224. local.delay randomint 60
  225. local.delay += 30
  226. wait local.delay
  227.  
  228. local.NoiseIndex randomint 7
  229. local.NoiseIndex += 1
  230.  
  231. local.NoiseIndex ifequal 1 goto RandomNoisePlay1
  232. local.NoiseIndex ifequal 2 goto RandomNoisePlay2
  233. local.NoiseIndex ifequal 3 goto RandomNoisePlay3
  234. local.NoiseIndex ifequal 4 goto RandomNoisePlay4
  235. local.NoiseIndex ifequal 5 goto RandomNoisePlay5
  236. local.NoiseIndex ifequal 6 goto RandomNoisePlay6
  237. local.NoiseIndex ifequal 7 goto RandomNoisePlay7
  238.  
  239. RandomNoisePlay1:
  240. parm.actor1 string local.NoiseMaker
  241. parm.actor2 string local.NoiseMaker
  242. thread dialog::combat_one
  243. waitForThread parm.previousthread
  244. goto loop_random_noise
  245.  
  246. RandomNoisePlay2:
  247. parm.actor1 string local.NoiseMaker
  248. parm.actor2 string local.NoiseMaker
  249. thread dialog::combat_two
  250. waitForThread parm.previousthread
  251. goto loop_random_noise
  252.  
  253. RandomNoisePlay3:
  254. parm.actor1 string local.NoiseMaker
  255. parm.actor2 string local.NoiseMaker
  256. thread dialog::combat_three
  257. waitForThread parm.previousthread
  258. goto loop_random_noise
  259.  
  260. RandomNoisePlay4:
  261. parm.actor1 string local.NoiseMaker
  262. parm.actor2 string local.NoiseMaker
  263. thread dialog::combat_four
  264. waitForThread parm.previousthread
  265. goto loop_random_noise
  266.  
  267. RandomNoisePlay5:
  268. parm.actor1 string local.NoiseMaker
  269. parm.actor2 string local.NoiseMaker
  270. thread dialog::combat_five
  271. waitForThread parm.previousthread
  272. goto loop_random_noise
  273.  
  274. RandomNoisePlay6:
  275. parm.actor1 string local.NoiseMaker
  276. parm.actor2 string local.NoiseMaker
  277. thread dialog::combat_six
  278. waitForThread parm.previousthread
  279. goto loop_random_noise
  280.  
  281. RandomNoisePlay7:
  282. parm.actor1 string local.NoiseMaker
  283. parm.actor2 string local.NoiseMaker
  284. thread dialog::combat_seven
  285. waitForThread parm.previousthread
  286. goto loop_random_noise
  287.  
  288. random_noise_done:
  289.  
  290. end // random_noise_init_thread
  291.  
  292.  
  293. // repel_init_thread:
  294. /////////////////////////////////////////////////////////////////////////////
  295. repel_init_thread:
  296. local.Count = 1
  297.  
  298. loop_setup_repel:
  299. local.Rope string "$repel_thug"
  300. local.Rope appendint local.Count
  301. local.Rope append "_rope"
  302.  
  303. local.Rope hide
  304.  
  305. local.Count += 1
  306. local.Count ifless 12 goto loop_setup_repel
  307.  
  308. repel_init_done:
  309.  
  310. end // repel_init_thread
  311.  
  312.  
  313. //===========================================================================
  314. //===========================================================================
  315. // CINEMATICS
  316. //===========================================================================
  317. //===========================================================================
  318. // init_start_cinematic_thread:
  319. /////////////////////////////////////////////////////////////////////////////
  320. init_start_cinematic_thread:
  321.  
  322. $mancini_thug04 ignoreall
  323. $mancini_thug04 hide
  324. $mancini_thug04 notsolid
  325.  
  326. $mancini_thug05 ignoreall
  327. $mancini_thug05 hide
  328. $mancini_thug05 notsolid
  329.  
  330. $start_mancini thread start_mancini_thread
  331. $start_thug01 thread start_thug01_thread
  332. $start_thug02 thread start_thug02_thread
  333.  
  334. end // init_start_cinematic_thread
  335.  
  336.  
  337. // start_cinematic_thread:
  338. /////////////////////////////////////////////////////////////////////////////
  339. start_cinematic_thread:
  340.  
  341. cinematic
  342. freezeplayer
  343. cueplayer
  344. hud 0
  345.  
  346. fadeout 0.1 0 0 0
  347.  
  348. skipthread start_cinematic_skip_thread
  349.  
  350. // START: disable the game enemies
  351. $mancini_thug04 ignoreall
  352. $mancini_thug04 hide
  353. $mancini_thug04 notsolid
  354.  
  355. $mancini_thug05 ignoreall
  356. $mancini_thug05 hide
  357. $mancini_thug05 notsolid
  358. // END: disable the game enemies
  359.  
  360. $start_camera jumpto $start_camera_start
  361. $start_camera lookat $start_mancini
  362.  
  363. cuecamera $start_camera
  364. $start_camera follow $start_camera_start $start_mancini
  365.  
  366. wait 0.1
  367. fadein 1 0 0 0
  368.  
  369. thread mancini_what_get_paid_dialog_thread
  370. waitForThread parm.previousthread
  371. wait 1
  372.  
  373. trigger $start_thug01
  374.  
  375. wait 10
  376.  
  377. // Clean up the cinematic stuff to start the map normally
  378. thread start_cinematic_skip_thread
  379.  
  380. end // start_cinematic_thread
  381.  
  382.  
  383. // start_cinematic_skip_thread:
  384. /////////////////////////////////////////////////////////////////////////////
  385. start_cinematic_skip_thread:
  386.  
  387. level.StartCinematicSkipped ifnotequal 0 goto start_cinematic_skip_done
  388. level.StartCinematicSkipped = 1
  389.  
  390. fadeout 1 0 0 0
  391. wait 1
  392.  
  393. fadein 1 0 0 0
  394.  
  395. $start_mancini remove
  396. $start_thug01 remove
  397. $start_thug02 remove
  398. $start_money01 remove
  399. $start_money02 remove
  400. $start_money03 remove
  401.  
  402. // START: enable the game enemies
  403. $mancini_thug04 respondtoall
  404. $mancini_thug04 show
  405. $mancini_thug04 solid
  406.  
  407. $mancini_thug05 respondtoall
  408. $mancini_thug05 show
  409. $mancini_thug05 solid
  410. // END: enable the game enemies
  411.  
  412. hud 1
  413. cueplayer
  414. releaseplayer
  415.  
  416. noncinematic
  417.  
  418. start_cinematic_skip_done:
  419.  
  420. end // start_cinematic_skip_thread
  421.  
  422.  
  423. // start_mancini_thread:
  424. /////////////////////////////////////////////////////////////////////////////
  425. start_mancini_thread:
  426.  
  427. local.self ignoreall
  428. local.self idle idle_giving_orders
  429.  
  430. end // start_mancini_thread
  431.  
  432.  
  433. // start_thug01_thread:
  434. /////////////////////////////////////////////////////////////////////////////
  435. start_thug01_thread:
  436.  
  437. local.self attachmodel moneybag.def gun $temp_money01
  438.  
  439. local.self ignoreall
  440. local.self activate start_thug01_activate
  441. pause
  442.  
  443. start_thug01_activate:
  444. local.self ignore activate
  445.  
  446. local.self walkto $start_thug01_node1
  447. waitFor local.self
  448.  
  449. local.self turnto 75
  450.  
  451. $temp_money01 throw $temp_money01 100 $start_moneybag_target 1
  452.  
  453. thread thug_hurryup_dialog_thread
  454. waitForThread parm.previousthread
  455.  
  456. local.self walkto $start_thug01_node2
  457. waitFor local.self
  458.  
  459. trigger $start_thug02
  460.  
  461. end // start_thug01_thread
  462.  
  463.  
  464. // start_thug02_thread:
  465. /////////////////////////////////////////////////////////////////////////////
  466. start_thug02_thread:
  467.  
  468. local.self attachmodel moneybag.def gun $temp_money02
  469.  
  470. local.self ignoreall
  471. local.self activate start_thug02_activate
  472. pause
  473.  
  474. start_thug02_activate:
  475. local.self ignore activate
  476.  
  477. local.self walkto $start_thug01_node3
  478. waitFor local.self
  479.  
  480. local.self turnto 225
  481.  
  482. $temp_money01 throw $temp_money01 100 $start_moneybag_target 1
  483.  
  484. thread thug_hurryup_dialog_thread
  485. waitForThread parm.previousthread
  486.  
  487. end // start_thug02_thread
  488.  
  489.  
  490. // init_exit_cinematic_thread:
  491. /////////////////////////////////////////////////////////////////////////////
  492. init_exit_cinematic_thread:
  493.  
  494. $exit_blade hide
  495. $exit_blade notsolid
  496.  
  497. $exit_blade thread exit_blade_thread
  498.  
  499. end // init_exit_cinematic_thread
  500.  
  501.  
  502. // exit_cinematic_thread:
  503. /////////////////////////////////////////////////////////////////////////////
  504. exit_cinematic_thread:
  505.  
  506. cinematic
  507. cueplayer
  508. hud 0
  509.  
  510. // DEMO:
  511. goto exit_cinematic_done
  512.  
  513. // FIXME: make this work after the demo
  514. goto exit_cinematic_done
  515.  
  516. fadeout 1 0 0 0
  517.  
  518. exit_cinematic_waitfordialog:
  519. wait 0.1
  520. //level.ExitDialogComplete ifequal 0 goto exit_cinematic_waitfordialog
  521.  
  522. skipthread exit_cinematic_skip_thread
  523.  
  524. $exit_blade show
  525. $exit_blade solid
  526.  
  527. $exit_camera lookat $exit_blade
  528. $exit_camera watch $exit_blade
  529. cuecamera $exit_camera
  530. wait 1
  531.  
  532. // delay freezing player so they fall and don't block the camera
  533. freezeplayer
  534.  
  535. fadein 0.5 0 0 0
  536. wait 0.5
  537.  
  538. trigger $exit_blade
  539. wait 5
  540.  
  541. exit_cinematic_done:
  542. thread exit_cinematic_skip_thread
  543.  
  544. end // exit_cinematic_thread
  545.  
  546.  
  547. // exit_cinematic_skip_thread:
  548. /////////////////////////////////////////////////////////////////////////////
  549. exit_cinematic_skip_thread:
  550.  
  551. level.ExitCinematicSkipped ifnotequal 0 goto exit_cinematic_skip_done
  552. level.ExitCinematicSkipped = 1
  553.  
  554. fadeout 1 0 0 0
  555. wait 1
  556.  
  557. fadein 1 0 0 0
  558.  
  559. level.Demo ifnotequal 0 menu outtro
  560. level.Demo ifequal 0 map abandon$start1
  561.  
  562. exit_cinematic_skip_done:
  563.  
  564. end // exit_cinematic_skip_thread
  565.  
  566.  
  567. // exit_blade_thread:
  568. /////////////////////////////////////////////////////////////////////////////
  569. exit_blade_thread:
  570.  
  571. local.self nodamage
  572. local.self ignoreall
  573. local.self definestate activate exit_blade_activate
  574. pause
  575.  
  576. exit_blade_activate:
  577. local.self ignore activate
  578.  
  579. local.self walkto $exit_blade_node1
  580. waitFor local.self
  581.  
  582. local.self anim frontflip
  583. waitFor local.self
  584.  
  585. local.self remove
  586.  
  587. end // exit_blade_thread
  588.  
  589.  
  590. //===========================================================================
  591. //===========================================================================
  592. // GENERAL
  593. //===========================================================================
  594. //===========================================================================
  595. // roof_break1_thread:
  596. /////////////////////////////////////////////////////////////////////////////
  597. roof_break1_thread:
  598.  
  599. game.intro_roof_break1 iflessequal 1 goto roof_break1_not_broken
  600.  
  601. roof_break1_sequence:
  602. $ls_roof1 lightstyle "z"
  603.  
  604. $roof_break1 remove
  605. $roof_railing1 remove
  606.  
  607. goto roof_break1_end
  608.  
  609. roof_break1_not_broken:
  610. //$roof_light1 lightstyle "a"
  611. $roof_debris1 remove
  612. $roof_debris2 remove
  613.  
  614. roof_break1_end:
  615.  
  616. end // roof_break1_thread
  617.  
  618.  
  619. // billboard_thread:
  620. /////////////////////////////////////////////////////////////////////////////
  621. billboard_thread:
  622.  
  623. $billboard2 bind $billboard
  624. wait 0.1
  625.  
  626. game.intro_billboard_fall ifequal 2 goto billboard_fall_sequence_left_quick
  627. game.intro_billboard_fall ifequal 3 goto billboard_fall_sequence_right_quick
  628.  
  629. $billboard_damage ondamage billboard_fall_sequence2
  630. pause
  631.  
  632. billboard_fall_sequence_left_quick:
  633. $billboard_clip remove
  634.  
  635. $billboard time 0.1
  636. $billboard moveEast 96
  637. $billboard moveWest 64
  638. $billboard moveDown 30
  639. $billboard rotateXdown 56
  640. waitFor $billboard
  641.  
  642. $billboard time 0.1
  643. $billboard rotateXdown 98
  644. $billboard rotateZup 5
  645. $billboard moveDown 495
  646. $billboard moveSouth 16
  647. $billboard moveWest 128
  648. waitFor $billboard
  649.  
  650. $billboard time 0.1
  651. $billboard rotateXdown 85
  652. $billboard rotateZup 5
  653. $billboard moveDown 495
  654. $billboard moveSouth 16
  655. $billboard moveWest 128
  656. waitFor $billboard
  657.  
  658. $billboard time 0.1
  659. $billboard rotateXdown 71
  660. $billboard rotateZup 5
  661. $billboard moveDown 490
  662. $billboard moveSouth 16
  663. $billboard moveWest 107
  664. waitFor $billboard
  665.  
  666. $window_bar2 time 0.1
  667. $window_bar2 moveDown 368
  668. $window_bar2 rotateXup 22
  669. $window_bar2 rotateYup 30
  670. $window_bar2 moveWest 16
  671. waitFor $window_bar2
  672.  
  673. $glass2 remove
  674. $glass3 remove
  675.  
  676. goto billboard_fall_sequence_done
  677.  
  678.  
  679. billboard_fall_sequence_right_quick:
  680.  
  681. $billboard_clip time 0.1
  682. $billboard_clip moveUp 64
  683. waitFor $billboard_clip
  684.  
  685. $billboard time 0.1
  686. $billboard moveEast 96
  687. $billboard rotateXdown 56
  688. $billboard moveWest 64
  689. $billboard moveDown 30
  690. waitFor $billboard
  691.  
  692. $billboard time 0.1
  693. $billboard rotateXdown 98
  694. $billboard rotateZup 5
  695. $billboard moveDown 495
  696. $billboard moveSouth 16
  697. $billboard moveWest 128
  698. waitFor $billboard
  699.  
  700. $billboard time 0.1
  701. $billboard rotateXdown 85
  702. $billboard rotateZup 5
  703. $billboard moveDown 495
  704. $billboard moveSouth 16
  705. $billboard moveWest 128
  706. waitFor $billboard
  707.  
  708. $billboard time 0.1
  709. $billboard rotateXdown 71
  710. $billboard rotateZup 5
  711. $billboard moveDown 490
  712. $billboard moveSouth 16
  713. $billboard moveWest 107
  714. waitFor $billboard
  715.  
  716. $billboard time 0.1
  717. $billboard moveDown 356
  718. $billboard rotateXup 20
  719. $billboard rotateZdown 20
  720. waitFor $billboard
  721.  
  722. $window_bar1 time 0.1
  723. $window_bar2 time 0.1
  724. $window_bar1 moveDown 368
  725. $window_bar1 rotateXup 22
  726. $window_bar1 rotateYdown 15
  727. $window_bar1 moveWest 16
  728. $window_bar2 moveDown 368
  729. $window_bar2 rotateXup 22
  730. $window_bar2 rotateYup 30
  731. $window_bar2 moveWest 16
  732. waitFor $window_bar2
  733.  
  734. $fountain_flood time 0.1
  735. $fountain_flood moveUp 394
  736. waitFor $fountain_flood
  737.  
  738. $glass2 remove
  739. $glass3 remove
  740. $fountain_break remove
  741.  
  742. $fountain_spill1 show
  743. $fountain_spill2 show
  744. $fountain_flood show
  745.  
  746. goto billboard_fall_sequence_done
  747.  
  748.  
  749. billboard_fall_sequence2:
  750. $billboard_damage nodamage
  751.  
  752. $billboard_clip remove
  753. $billboard_right remove
  754. $billboard_left remove
  755.  
  756. game.intro_billboard_fall = 2
  757. wait .3
  758.  
  759. $billboard time .4
  760. $billboard rotateXdown 56
  761. $billboard moveWest 64
  762. $billboard moveDown 30
  763. waitFor $billboard
  764.  
  765. $billboard time .7
  766.  
  767. $billboard rotateXdown 98
  768. $billboard rotateZup 5
  769. $billboard moveDown 495
  770. $billboard moveSouth 16
  771. $billboard moveWest 96
  772. waitFor $billboard
  773.  
  774. $billboard time .5
  775.  
  776. $billboard rotateXdown 85
  777. $billboard rotateZup 5
  778. $billboard moveDown 495
  779. $billboard moveSouth 16
  780. $billboard moveWest 96
  781. waitFor $billboard
  782.  
  783. $billboard time .4
  784.  
  785. $billboard rotateXdown 71
  786. $billboard rotateZup 5
  787. $billboard moveDown 490
  788. $billboard moveSouth 16
  789. $billboard moveWest 75
  790. waitFor $billboard
  791.  
  792. $glass2 shatter "0 0 0" 75 10 75 .25 0
  793. $glass3 shatter "0 0 0" 75 10 75 .25 0
  794. $glass2 remove
  795. $glass3 remove
  796. $billboard playsound impact/crates/crate3.wav 4
  797.  
  798. $window_bar2 time .5
  799. $window_bar2 moveDown 368
  800. $window_bar2 rotateXup 22
  801. $window_bar2 rotateYup 30
  802. $window_bar2 moveWest 16
  803. waitFor $window_bar2
  804.  
  805. thread destroys_property8_dialog_thread
  806.  
  807. billboard_fall_sequence_done:
  808.  
  809. end // billboard_thread
  810.  
  811.  
  812. // hc_copter_thread:
  813. /////////////////////////////////////////////////////////////////////////////
  814. hc_copter_thread:
  815.  
  816. $hc_copter playsound vehicle/helicopt/flyloop.wav 4.0
  817.  
  818. $hc_copter_parent followpath $hc_copter_path1
  819. waitFor $hc_copter_parent
  820.  
  821. $hc_copter stopsound
  822.  
  823. $hc_copter_rotors remove
  824. $hc_copter remove
  825. $hc_copter_parent remove
  826.  
  827.  
  828. end // hc_copter_thread
  829.  
  830.  
  831. // escalator_thread:
  832. /////////////////////////////////////////////////////////////////////////////
  833. escalator_thread:
  834. local.escalator_speed = 16
  835.  
  836. escalator_sequence:
  837.  
  838. $escalator_button onuse escalator_off
  839. pause
  840.  
  841. escalator_off:
  842. $escalator_button nouse
  843.  
  844. $escalator_button playsound environment/cabinet/glasscab/latch12.wav 1.0
  845.  
  846. $escalator_button time .5
  847. $escalator_button moveNorth 1
  848. waitFor $escalator_button
  849.  
  850. trigger $escalator_sound
  851.  
  852. $escalator_button time .5
  853. $escalator_button moveSouth 1
  854. waitFor $escalator_button
  855.  
  856. escalator_slow_down:
  857. local.escalator_speed -= 1
  858. wait .1
  859.  
  860. @escalator trans_mag local.escalator_speed
  861. local.escalator_speed ifgreater 0 goto escalator_slow_down
  862.  
  863. $escalator_button onuse escalator_on
  864. pause
  865.  
  866. escalator_on:
  867. $escalator_button nouse
  868.  
  869. $escalator_button playsound environment/cabinet/glasscab/latch12.wav 1.0
  870.  
  871. $escalator_button time .5
  872. $escalator_button moveNorth 1
  873. waitFor $escalator_button
  874.  
  875. trigger $escalator_sound
  876.  
  877. $escalator_button time .5
  878. $escalator_button moveSouth 1
  879. waitFor $escalator_button
  880.  
  881. escalator_speed_up:
  882. wait .1
  883.  
  884. @escalator trans_mag local.escalator_speed
  885. local.escalator_speed += 1
  886. local.escalator_speed iflessequal 16 goto escalator_speed_up
  887.  
  888. goto escalator_sequence
  889.  
  890. end // escalator_thread
  891.  
  892.  
  893. // tele_thread:
  894. /////////////////////////////////////////////////////////////////////////////
  895. tele_thread:
  896.  
  897. $tele1 key coin
  898. $tele2 key coin
  899.  
  900. tele_start:
  901. $tele1 onuse tele1_sequence
  902. $tele2 onuse tele2_sequence
  903. pause
  904.  
  905. tele1_sequence:
  906. $tele1 nouse
  907. $tele2 nouse
  908.  
  909. local.other take local.key
  910.  
  911. thread phone_bruno_dialog_thread
  912.  
  913. goto tele_thread_done
  914.  
  915. tele2_sequence:
  916. $tele1 nouse
  917. $tele2 nouse
  918.  
  919. local.other take local.key
  920.  
  921. thread phone_cinema_dialog_thread
  922.  
  923. tele_thread_done:
  924.  
  925. end // tele_thread
  926.  
  927.  
  928. // revolvingdoor1_thread:
  929. /////////////////////////////////////////////////////////////////////////////
  930. revolvingdoor1_thread:
  931.  
  932. revolvingdoor1_start:
  933. $revolvingdoor1 ontouch revolvingdoor1_touched
  934. $revolvingdoor1 ondamage revolvingdoor1_damaged
  935. pause
  936.  
  937. revolvingdoor1_touched:
  938. $revolvingdoor1 notouch
  939.  
  940. $revolvingdoor1_pole playsound environment/levelsnds/bank/rvlv001.wav 2.0
  941.  
  942. $revolvingdoor1 time 4
  943. $revolvingdoor1_pole time 4
  944. $revolvingdoor1 rotateYup 180
  945. $revolvingdoor1_pole rotateYup 180
  946. waitFor $revolvingdoor1_pole
  947.  
  948. $revolvingdoor1_pole stopsound
  949.  
  950. goto revolvingdoor1_start
  951.  
  952. revolvingdoor1_damaged:
  953. $revolvingdoor1 playsound impact/glass/glassbrk/mix1.wav
  954. $revolvingdoor1 shatter "0 0 0" 50 10 25 .05 0
  955. $revolvingdoor1 remove
  956.  
  957. end // revolvingdoor1_thread
  958.  
  959.  
  960. // revolvingdoor2_thread:
  961. /////////////////////////////////////////////////////////////////////////////
  962. revolvingdoor2_thread:
  963.  
  964. revolvingdoor2_start:
  965. $revolvingdoor2 ontouch revolvingdoor2_touched
  966. $revolvingdoor2 ondamage revolvingdoor2_damaged
  967. pause
  968.  
  969. revolvingdoor2_touched:
  970. $revolvingdoor2 notouch
  971.  
  972. $revolvingdoor2_pole playsound environment/levelsnds/bank/rvlv001.wav 2.0
  973.  
  974. $revolvingdoor2 time 4
  975. $revolvingdoor2_pole time 4
  976. $revolvingdoor2 rotateYup 180
  977. $revolvingdoor2_pole rotateYup 180
  978. waitFor $revolvingdoor2_pole
  979.  
  980. $revolvingdoor2_pole stopsound
  981.  
  982. goto revolvingdoor2_start
  983.  
  984. revolvingdoor2_damaged:
  985. $revolvingdoor2 playsound impact/glass/glassbrk/mix1.wav
  986. $revolvingdoor2 shatter "0 0 0" 50 10 25 .05 0
  987. $revolvingdoor2 remove
  988.  
  989. end // revolvingdoor2_thread
  990.  
  991.  
  992. // clock_thread:
  993. /////////////////////////////////////////////////////////////////////////////
  994. clock_thread:
  995.  
  996. thread clock_hour_thread
  997.  
  998. clock_sequence:
  999. wait 60
  1000.  
  1001. $longhand time 1
  1002. $shorthand time 1
  1003. $shorthand rotateXdown .5
  1004. $longhand rotateXdown 6
  1005. waitFor $longhand
  1006.  
  1007. goto clock_sequence
  1008.  
  1009. end // clock_thread
  1010.  
  1011.  
  1012. // clock_hour_thread:
  1013. /////////////////////////////////////////////////////////////////////////////
  1014. clock_hour_thread:
  1015.  
  1016. clock_hour_sequence:
  1017. wait 3600
  1018.  
  1019. $longhand playsound misc/bell.wav
  1020. wait 2
  1021.  
  1022. $longhand playsound misc/bell.wav
  1023. wait 2
  1024.  
  1025. $longhand playsound misc/bell.wav
  1026. wait 2
  1027.  
  1028. $longhand playsound misc/bell.wav
  1029.  
  1030. goto clock_hour_sequence
  1031.  
  1032. end // clock_hour_thread
  1033.  
  1034.  
  1035. // teller1_thread:
  1036. /////////////////////////////////////////////////////////////////////////////
  1037. teller1_thread:
  1038.  
  1039. $teller1 time 1
  1040. $teller1 moveNorth 22
  1041. waitFor $teller1
  1042.  
  1043. teller1_start:
  1044. $teller1 onuse teller1_open
  1045. pause
  1046.  
  1047. teller1_open:
  1048. $teller1 nouse
  1049.  
  1050. $teller1 playsound environment/cabinet/drawer/cab11.wav
  1051. $teller1 time 1
  1052. $teller1 moveSouth 22
  1053. waitFor $teller1
  1054.  
  1055. $teller1 onuse teller1_close
  1056. pause
  1057.  
  1058. teller1_close:
  1059. $teller1 nouse
  1060.  
  1061. $teller1 playsound environment/cabinet/drawer/cab12.wav
  1062. $teller1 moveNorth 22
  1063. waitFor $teller1
  1064.  
  1065. goto teller1_start
  1066.  
  1067. end // teller1_thread
  1068.  
  1069.  
  1070. // teller2_thread:
  1071. /////////////////////////////////////////////////////////////////////////////
  1072. teller2_thread:
  1073. local.cashtaken = 0
  1074.  
  1075. $dollar1 bind $teller2
  1076. $teller2_use bind $teller2
  1077. wait 0.1
  1078.  
  1079. $teller2 time 1
  1080. $teller2 moveNorth 22
  1081. waitFor $teller2
  1082.  
  1083. teller2_start:
  1084. $teller2 onuse teller2_open
  1085. pause
  1086.  
  1087. teller2_open:
  1088. $teller2 nouse
  1089.  
  1090. $teller2 playsound environment/cabinet/drawer/cab11.wav
  1091. $teller2 time 1
  1092. $teller2 moveSouth 22
  1093. waitFor $teller2
  1094.  
  1095. teller2_close_ready:
  1096. local.cashtaken ifequal 0 $teller2_use onuse teller2_takecash
  1097. local.cashtaken ifnotequal 0 $teller2 onuse teller2_close
  1098. pause
  1099.  
  1100. teller2_takecash:
  1101. $teller2_use nouse
  1102. $teller2_use remove
  1103.  
  1104. local.cashtaken = 1
  1105.  
  1106. thread cash1_dialog_thread
  1107.  
  1108. // FIXME: *1
  1109. $dollar1 remove
  1110. *1 item dollar 1
  1111.  
  1112. goto teller2_close_ready
  1113.  
  1114. teller2_close:
  1115. $teller2 nouse
  1116.  
  1117. $teller2 playsound environment/cabinet/drawer/cab12.wav
  1118. $teller2 moveNorth 22
  1119. waitFor $teller2
  1120.  
  1121. goto teller2_start
  1122.  
  1123. end // teller2_thread
  1124.  
  1125.  
  1126. // table1_thread:
  1127. /////////////////////////////////////////////////////////////////////////////
  1128. table1_thread:
  1129.  
  1130. $table1 ontrigger table1_rotate_sequence
  1131. pause
  1132.  
  1133. table1_rotate_sequence:
  1134. $table1 notrigger
  1135.  
  1136. $table1 time .3
  1137. $table1 rotateXup 75
  1138. waitFor $table1
  1139.  
  1140. wait 1
  1141. trigger $table1_damaged
  1142.  
  1143. $table1 remove
  1144.  
  1145. end // table1_thread
  1146.  
  1147.  
  1148. // vault_thread:
  1149. /////////////////////////////////////////////////////////////////////////////
  1150. vault_thread:
  1151. local.OpenedOnce = 0
  1152.  
  1153. $vault_handle bind $vault_door
  1154. wait 0.1
  1155.  
  1156. //open door for mancini's sequence
  1157. $vault_portal open
  1158.  
  1159. $vault_handle time 1
  1160. $vault_handle rotateZdown 60
  1161. waitFor $vault_handle
  1162.  
  1163. $vault_door time 2
  1164. $vault_door rotateYup 75
  1165. waitFor $vault_door
  1166.  
  1167. $vault_trigger ontrigger vault_door_close_for_mancini
  1168. pause
  1169.  
  1170. vault_door_close_for_mancini:
  1171. $vault_trigger notrigger
  1172.  
  1173. $vault_door playsound environment/levelsnds/bank/bankdoo2.wav
  1174. $vault_door time 2
  1175. $vault_door rotateYdown 75
  1176. waitFor $vault_door
  1177. $vault_door playsound impact/metal/drm2.wav
  1178.  
  1179. $vault_handle playsound environment/doors/metal/mtldoor1.wav
  1180. $vault_handle time 1
  1181. $vault_handle rotateZup 60
  1182. waitFor $vault_handle
  1183.  
  1184. $vault_portal close
  1185.  
  1186. $camgun1 activate
  1187. $camgun2 activate
  1188.  
  1189. vault_begin:
  1190.  
  1191. $vault_handle onuse check_vault_combo
  1192. pause
  1193.  
  1194. check_vault_combo:
  1195. $vault_handle nouse
  1196.  
  1197. level.vault_switch1_position ifequal level.VaultCombo1 goto check_vault_combo2
  1198. level.description ifequal 0 goto vault_begin
  1199.  
  1200. $camgun1 activate
  1201. $camgun2 activate
  1202.  
  1203. local.jc_warn_dialog ifequal 0 thread jc_warn_dialog_thread
  1204. local.jc_warn_dialog = 1
  1205. wait 5
  1206.  
  1207. $camgun1 deactivate
  1208. $camgun2 deactivate
  1209.  
  1210. goto vault_begin
  1211.  
  1212. check_vault_combo2:
  1213. level.vault_switch2_position ifequal level.VaultCombo2 goto vault_open
  1214. level.description ifequal 0 goto vault_begin
  1215.  
  1216. $camgun1 activate
  1217. $camgun2 activate
  1218.  
  1219. local.jc_warn_dialog ifequal 0 thread jc_warn_dialog_thread
  1220. local.jc_warn_dialog = 1
  1221. wait 5
  1222.  
  1223. $camgun1 deactivate
  1224. $camgun2 deactivate
  1225. goto vault_begin
  1226.  
  1227.  
  1228. vault_open:
  1229. local.OpenedOnce ifequal 0 thread vault_opened_misscomp_thread
  1230. local.OpenedOnce = 1
  1231.  
  1232. $vault_portal open
  1233.  
  1234. $vault_handle playsound environment/doors/metal/mtldoor1.wav
  1235. $vault_hanlde time 1
  1236. $vault_handle rotateZdown 60
  1237. waitFor $vault_handle
  1238.  
  1239. $vault_door playsound environment/levelsnds/bank/bankdoo2.wav
  1240. $vault_door time 2
  1241. $vault_door rotateYup 75
  1242. waitFor $vault_door
  1243. $vault_door playsound impact/metal/drm2.wav
  1244.  
  1245. $vault_handle onuse vault_closed
  1246. pause
  1247.  
  1248. vault_closed:
  1249. $vault_handle nouse
  1250.  
  1251. $vault_door playsound environment/levelsnds/bank/bankdoo2.wav
  1252. $vault_door time 2
  1253. $vault_door rotateYdown 75
  1254. waitFor $vault_door
  1255. $vault_door playsound impact/metal/drm2.wav
  1256.  
  1257. $vault_handle playsound environment/doors/metal/mtldoor1.wav
  1258. $vault_handle time 1
  1259. $vault_handle rotateZup 60
  1260. waitFor $vault_handle
  1261.  
  1262. $vault_portal close
  1263.  
  1264. goto vault_begin
  1265.  
  1266. end // vault_thread
  1267.  
  1268.  
  1269. // vault_switch1_thread:
  1270. /////////////////////////////////////////////////////////////////////////////
  1271. vault_switch1_thread:
  1272.  
  1273. vault_switch1_sequence:
  1274. $vault_switch1 onuse vault_switch1_rotate
  1275. pause
  1276.  
  1277. vault_switch1_rotate:
  1278. $vault_switch1 nouse
  1279.  
  1280. $vault_switch1 time 0.5
  1281. $vault_switch1 rotateZdown 45
  1282. waitFor $vault_switch1
  1283.  
  1284. $vault_switch1 playsound environment/cabinet/glasscab/latch12.wav
  1285.  
  1286. level.vault_switch1_position += 1
  1287. level.vault_switch1_position ifequal 9 level.vault_switch1_position = 1
  1288.  
  1289. goto vault_switch1_sequence
  1290.  
  1291. end // vault_switch1_thread
  1292.  
  1293.  
  1294. // vault_switch2_thread:
  1295. /////////////////////////////////////////////////////////////////////////////
  1296. vault_switch2_thread:
  1297.  
  1298. vault_switch2_sequence:
  1299. $vault_switch2 onuse vault_switch2_rotate
  1300. pause
  1301.  
  1302. vault_switch2_rotate:
  1303. $vault_switch2 nouse
  1304.  
  1305. $vault_switch2 time 0.5
  1306. $vault_switch2 rotateZdown 45
  1307. waitFor $vault_switch2
  1308.  
  1309. $vault_switch2 playsound environment/cabinet/glasscab/latch12.wav
  1310.  
  1311. level.vault_switch2_position += 1
  1312. level.vault_switch2_position ifequal 9 level.vault_switch2_position = 1
  1313.  
  1314. goto vault_switch2_sequence
  1315.  
  1316. end // vault_switch2_thread
  1317.  
  1318.  
  1319. // safety_deposit_drawer_thread:
  1320. /////////////////////////////////////////////////////////////////////////////
  1321. safety_deposit_drawer_thread:
  1322.  
  1323. $safe_drawer time 1
  1324. $safe_drawer moveEast 32
  1325. waitFor $safe_drawer
  1326.  
  1327. safe_drawer_start:
  1328. $safe_drawer onuse safe_drawer_open
  1329. pause
  1330.  
  1331. safe_drawer_open:
  1332. $safe_drawer nouse
  1333. $safe_drawer playsound environment/cabinet/drawer/cab11.wav 1.0
  1334. $safe_drawer moveWest 32
  1335. waitFor $safe_drawer
  1336.  
  1337. $safe_drawer onuse safe_drawer_close
  1338. pause
  1339.  
  1340. safe_drawer_close:
  1341. $safe_drawer nouse
  1342. $safe_drawer playsound environment/cabinet/drawer/cab12.wav 1.0
  1343. $safe_drawer moveEast 32
  1344. waitFor $safe_drawer
  1345. goto safe_drawer_start
  1346.  
  1347. end // safety_deposit_drawer_thread
  1348.  
  1349.  
  1350. // receptacle1_thread:
  1351. /////////////////////////////////////////////////////////////////////////////
  1352. receptacle1_thread:
  1353. $receptacle1_rim time .3
  1354. $receptacle1 time .3
  1355. $receptacle1 notsolid
  1356.  
  1357. receptacle1_begin:
  1358.     
  1359. $receptacle1_rim onuse receptacle1_sequence
  1360. $receptacle1_rim ondamage receptacle1_break
  1361. pause
  1362.  
  1363. receptacle1_sequence:
  1364. $receptacle1_rim nouse
  1365. $receptacle1 rotateXup 60
  1366. waitFor $receptacle1
  1367. $receptacle1 rotateXdown 90
  1368. waitFor $receptacle1
  1369. $receptacle1 rotateXup 45
  1370. waitFor $receptacle1
  1371. $receptacle1 rotateXdown 22
  1372. waitFor $receptacle1
  1373. $receptacle1 rotateXup 7
  1374. waitFor $receptacle1
  1375.  
  1376. goto receptacle1_begin
  1377.  
  1378. receptacle1_break:
  1379. trigger $g5
  1380. $receptacle1 hide
  1381. $receptacle1_rim notsolid
  1382. $receptacle1_rim hide
  1383.  
  1384. end // receptacle1_thread
  1385.  
  1386.  
  1387. // receptacle2_thread:
  1388. /////////////////////////////////////////////////////////////////////////////
  1389. receptacle2_thread:
  1390. $receptacle2_rim time .3
  1391. $receptacle2 time .3
  1392. $receptacle2 notsolid
  1393.  
  1394. receptacle2_begin:
  1395.  
  1396. $receptacle2_rim onuse receptacle2_sequence
  1397. $receptacle2_rim ondamage receptacle2_break
  1398. pause
  1399.  
  1400. receptacle2_sequence:
  1401. $receptacle2_rim nouse
  1402. $receptacle2 rotateXdown 60
  1403. waitFor $receptacle2
  1404. $receptacle2 rotateXup 90
  1405. waitFor $receptacle2
  1406. $receptacle2 rotateXdown 45
  1407. waitFor $receptacle2
  1408. $receptacle2 rotateXup 22
  1409. waitFor $receptacle2
  1410. $receptacle2 rotateXdown 7
  1411. waitFor $receptacle2
  1412. goto receptacle2_begin
  1413.  
  1414. receptacle2_break:
  1415. trigger $g3
  1416. $receptacle2 hide
  1417. $receptacle2_rim notsolid
  1418. $receptacle2_rim hide
  1419.  
  1420. end // receptacle2_thread
  1421.  
  1422.  
  1423. // destroys_furniture1_thread:
  1424. /////////////////////////////////////////////////////////////////////////////
  1425. destroys_furniture1_thread:
  1426.  
  1427. $destroys_furniture1 ontrigger destroys_furniture1_sequence
  1428. pause
  1429.  
  1430. destroys_furniture1_sequence:
  1431. $destroys_furniture1 notrigger
  1432. wait 2
  1433.  
  1434. thread destroys_furniture1_dialog_thread
  1435.  
  1436. end // destroys_furniture1_thread
  1437.  
  1438.  
  1439. // destroys_furniture2_thread:
  1440. /////////////////////////////////////////////////////////////////////////////
  1441. destroys_furniture2_thread:
  1442.  
  1443. $destroys_furniture2 ontrigger destroys_furniture2_sequence
  1444. pause
  1445.  
  1446. destroys_furniture2_sequence:
  1447. $destroys_furniture2 notrigger
  1448. wait 2
  1449.  
  1450. thread destroys_furniture2_dialog_thread
  1451.  
  1452. end // destroys_furniture2_thread
  1453.  
  1454.  
  1455. // destroys_furniture3_thread:
  1456. /////////////////////////////////////////////////////////////////////////////
  1457. destroys_furniture3_thread:
  1458.  
  1459. $destroys_furniture3 ontrigger destroys_furniture3_sequence
  1460. pause
  1461.  
  1462. destroys_furniture3_sequence:
  1463. $destroys_furniture3 notrigger
  1464. wait 2
  1465.  
  1466. thread destroys_furniture3_dialog_thread
  1467.  
  1468. end // destroys_furniture3_thread
  1469.  
  1470.  
  1471. // destroys_furniture4_thread:
  1472. /////////////////////////////////////////////////////////////////////////////
  1473. destroys_furniture4_thread:
  1474.  
  1475. $destroys_furniture4 ontrigger destroys_furniture4_sequence
  1476. pause
  1477.  
  1478. destroys_furniture4_sequence:
  1479. $destroys_furniture4 notrigger
  1480. wait 2
  1481.  
  1482. thread destroys_furniture4_dialog_thread
  1483.  
  1484. end // destroys_furniture4_thread
  1485.  
  1486.  
  1487. // plant_break1_thread:
  1488. /////////////////////////////////////////////////////////////////////////////
  1489. plant_break1_thread:
  1490.  
  1491. $plant_break1 ontrigger plant_break1_sequence
  1492. pause
  1493.  
  1494. plant_break1_sequence:
  1495. $plant_break1 notrigger
  1496. wait 2
  1497.  
  1498. thread destroys_plant1_dialog_thread
  1499.  
  1500. end // plant_break1_thread
  1501.  
  1502.  
  1503. // painting1_thread:
  1504. /////////////////////////////////////////////////////////////////////////////
  1505. painting1_thread:
  1506. local.cashtaken = 0
  1507.  
  1508. // Couldn't place $safe_use on top of the dollars or else they would fall
  1509. // out of the world
  1510.  
  1511. painting1_sequence_begin:
  1512. $painting1 onuse painting1_sequence
  1513. $safe_door onuse painting1_sequence
  1514. pause
  1515.  
  1516. painting1_sequence:
  1517. $painting1 nouse
  1518. $safe_door nouse
  1519.  
  1520. $painting1 time 1
  1521. $painting1 moveEast 80
  1522. waitFor $painting1
  1523.  
  1524. $safe_door time 1
  1525. $safe_door rotateYdown 95
  1526. waitFor $safe_door
  1527.  
  1528. painting1_sequence2_ready:
  1529. $painting1 onuse painting1_sequence2
  1530. $safe_door onuse painting1_sequence2
  1531. pause
  1532.  
  1533. painting1_sequence2:
  1534. $painting1 nouse
  1535. $safe_door nouse
  1536.  
  1537. $safe_door time 1
  1538. $safe_door rotateYup 95
  1539. waitFor $safe_door
  1540.  
  1541. $painting1 time 1
  1542. $painting1 moveWest 80
  1543. waitFor $painting1
  1544.  
  1545. goto painting1_sequence_begin
  1546.  
  1547. end // painting1_thread
  1548.  
  1549.  
  1550. // painting2_thread:
  1551. /////////////////////////////////////////////////////////////////////////////
  1552. painting2_thread:
  1553.  
  1554. $painting2 ondamage painting2_sequence
  1555. pause
  1556.  
  1557. painting2_sequence:
  1558. $painting2 nodamage
  1559. wait .2
  1560.  
  1561. $painting2 time .4
  1562. $painting2 rotateZdown 20
  1563. waitFor $painting2
  1564.  
  1565. $painting2 time .4
  1566. $painting2 rotateZup 8
  1567. waitFor $painting2
  1568.  
  1569. $painting2 time .4
  1570. $painting2 rotateZdown 3
  1571. waitFor $painting2
  1572.  
  1573. end // painting2_thread
  1574.  
  1575.  
  1576. // painting3_thread:
  1577. /////////////////////////////////////////////////////////////////////////////
  1578. painting3_thread:
  1579.  
  1580. $painting3 ondamage painting3_sequence
  1581. pause
  1582.  
  1583. painting3_sequence:
  1584. $painting3 nodamage
  1585. wait .2
  1586.  
  1587. $painting3 time .4
  1588. $painting3 rotateZup 30
  1589. waitFor $painting3
  1590.  
  1591. $painting3 time .4
  1592. $painting3 rotateZdown 8
  1593. waitFor $painting3
  1594.  
  1595. $painting3 time .4
  1596. $painting3 rotateZup 3
  1597. waitFor $painting3
  1598.  
  1599. end // painting3_thread
  1600.  
  1601.  
  1602. // painting4_thread:
  1603. /////////////////////////////////////////////////////////////////////////////
  1604. painting4_thread:
  1605.  
  1606. $painting4 ondamage painting4_sequence
  1607. pause
  1608.  
  1609. painting4_sequence:
  1610. $painting4 nodamage
  1611. wait .2
  1612.  
  1613. $painting4 time .4
  1614. $painting4 rotateZdown 40
  1615. waitFor $painting4
  1616.  
  1617. $painting4 time .4
  1618. $painting4 rotateZup 12
  1619. waitFor $painting4
  1620.  
  1621. $painting4 time .4
  1622. $painting4 rotateZdown 5
  1623. waitFor $painting4
  1624.  
  1625. end // painting4_thread
  1626.  
  1627.  
  1628. // painting5_thread:
  1629. /////////////////////////////////////////////////////////////////////////////
  1630. painting5_thread:
  1631.  
  1632. $painting5 ondamage painting5_sequence
  1633. pause
  1634.  
  1635. painting5_sequence:
  1636. $painting5 nodamage
  1637. wait .2
  1638.  
  1639. $painting5 time .4
  1640. $painting5 rotateXdown 20
  1641. waitFor $painting5
  1642.  
  1643. $painting5 time .4
  1644. $painting5 rotateXup 8
  1645. waitFor $painting5
  1646.  
  1647. $painting5 time .4
  1648. $painting5 rotateXdown 4
  1649. waitFor $painting5
  1650.  
  1651. end // painting5_thread
  1652.  
  1653.  
  1654. // painting6_thread:
  1655. /////////////////////////////////////////////////////////////////////////////
  1656. painting6_thread:
  1657.  
  1658. $painting6 ondamage painting6_sequence
  1659. pause
  1660.  
  1661. painting6_sequence:
  1662. $painting6 nodamage
  1663. wait .2
  1664.  
  1665. $painting6 time .4
  1666. $painting6 rotateXdown 20
  1667. waitFor $painting6
  1668.  
  1669. $painting6 time .4
  1670. $painting6 rotateXup 8
  1671. waitFor $painting6
  1672.  
  1673. $painting6 time .4
  1674. $painting6 rotateXdown 4
  1675. waitFor $painting6
  1676.  
  1677. end // painting6_thread
  1678.  
  1679.  
  1680. // sign1_thread:
  1681. /////////////////////////////////////////////////////////////////////////////
  1682. sign1_thread:
  1683.  
  1684. $sign1 ondamage sign1_sequence
  1685. pause
  1686.  
  1687. sign1_sequence:
  1688. $sign1 nodamage
  1689.  
  1690. $sign1 time .4
  1691. $sign1 rotateXup 20
  1692. waitFor $sign1
  1693.  
  1694. $sign1 time .4
  1695. $sign1 rotateXdown 8
  1696. waitFor $sign1
  1697.  
  1698. $sign1 time .4
  1699. $sign1 rotateXup 4
  1700. waitFor $sign1
  1701.  
  1702. end // sign1_thread
  1703.  
  1704.  
  1705. // sign2_thread:
  1706. /////////////////////////////////////////////////////////////////////////////
  1707. sign2_thread:
  1708.  
  1709. $sign2 ondamage sign2_sequence
  1710. pause
  1711.  
  1712. sign2_sequence:
  1713. $sign2 nodamage
  1714.  
  1715. $sign2 time .4
  1716. $sign2 rotateZup 20
  1717. waitFor $sign2
  1718.  
  1719. $sign2 time .4
  1720. $sign2 rotateZdown 8
  1721. waitFor $sign2
  1722.  
  1723. $sign2 time .4
  1724. $sign2 rotateZup 4
  1725. waitFor $sign2
  1726.  
  1727. end // sign2_thread
  1728.  
  1729.  
  1730. // helicopter_sound_thread:
  1731. /////////////////////////////////////////////////////////////////////////////
  1732. helicopter_sound_thread:
  1733.  
  1734. game.intro_ground_entrance ifequal 2 goto helicopter_sound_done
  1735.  
  1736. $helicopter_sound playsound vehicle/helicopt/flyloop.wav 4.0
  1737. wait 1
  1738. $helicopter_sound playsound vehicle/helicopt/flyloop.wav 3.0
  1739. wait 1
  1740. $helicopter_sound playsound vehicle/helicopt/flyloop.wav 2.0
  1741. wait 1
  1742. $helicopter_sound playsound vehicle/helicopt/flyloop.wav 1.0
  1743. wait .8
  1744. $helicopter_sound playsound vehicle/helicopt/flyloop.wav 0.5
  1745. wait .6
  1746. $helicopter_sound playsound vehicle/helicopt/flyloop.wav 0.25
  1747. wait .4
  1748. $helicopter_sound stopsound
  1749.  
  1750. $helicopter_sound remove
  1751.  
  1752. helicopter_sound_done:
  1753.  
  1754. end // helicopter_sound_thread
  1755.  
  1756.  
  1757. // security_key_thread:
  1758. /////////////////////////////////////////////////////////////////////////////
  1759. security_key_thread:
  1760.  
  1761. trigger $spawn_hostage1_thug04
  1762. trigger $spawn_hostage1_thug05
  1763. trigger $spawn_hostage1_thug06
  1764.  
  1765. thread security_key_misscomp_thread
  1766.  
  1767. end // security_key_thread
  1768.  
  1769.  
  1770. // keydoor_unlocked_thread:
  1771. /////////////////////////////////////////////////////////////////////////////
  1772. keydoor_unlocked_thread:
  1773.  
  1774. $keydoor key ""
  1775.  
  1776. end // keydoor_unlocked_thread
  1777.  
  1778.  
  1779. // revolvingdoor1_remove_thread:
  1780. /////////////////////////////////////////////////////////////////////////////
  1781. revolvingdoor1_remove_thread:
  1782.  
  1783. $revolvingdoor1 playsound impact/glass/glassbrk/mix1.wav
  1784. $revolvingdoor1 shatter "0 0 0" 50 10 25 .05 0
  1785. $revolvingdoor1 remove
  1786.  
  1787. end // revolvingdoor1_remove_thread
  1788.  
  1789. //===========================================================================
  1790. //===========================================================================
  1791. // CHARACTERS
  1792. //===========================================================================
  1793. //===========================================================================
  1794. // init_character_items_thread:
  1795. /////////////////////////////////////////////////////////////////////////////
  1796. init_character_items_thread:
  1797.  
  1798. $securityroom_boss health 100
  1799. $securityroom_boss item RiotHelmet 100
  1800. $securityroom_boss item FlakJacket 100
  1801. $securityroom_boss item FlakPants 100
  1802.  
  1803. $mancini_thug04 health 100
  1804. $mancini_thug04 item RiotHelmet 100
  1805. $mancini_thug04 item FlakJacket 100
  1806. $mancini_thug04 item FlakPants 100
  1807.  
  1808. $mancini_thug05 health 100
  1809. $mancini_thug05 item RiotHelmet 100
  1810. $mancini_thug05 item FlakJacket 100
  1811. $mancini_thug05 item FlakPants 100
  1812.  
  1813. $thug02 item Health 20
  1814. $hostage1_thug03 item Health 20
  1815. $mancini_thug03 item Health 50
  1816. $hostage4_thug01 item Health 20
  1817. $thug06 item Health 20
  1818.  
  1819. end // init_character_items_thread
  1820.  
  1821.  
  1822. // hostage01_thread:
  1823. /////////////////////////////////////////////////////////////////////////////
  1824. hostage01_thread:
  1825.  
  1826. local.self anim crouch_idle
  1827.  
  1828. local.self ignoreall
  1829. local.self respondto pain
  1830. local.self respondto opendoor
  1831. local.self definestate activate hostage01_activate
  1832. local.self definestate killed hostage01_killed
  1833. pause
  1834.  
  1835. hostage01_activate:
  1836. local.self ignore activate
  1837.  
  1838. trigger $hostage01_snd
  1839.  
  1840. // Cause the thug to attack her
  1841. trigger $hostage1_thug01
  1842.  
  1843. local.self runto $hostage01_node1
  1844. waitFor local.self
  1845.  
  1846. local.self anim crouch_idle
  1847.  
  1848. local.self definestate use hostage01_use
  1849. pause
  1850.  
  1851. hostage01_use:
  1852. local.self ignore use
  1853.  
  1854. // FIXME: demo
  1855. // thread blade_saved_female_dialog_thread
  1856.  
  1857. local.self runto $hostage_flee01
  1858. waitFor local.self
  1859.  
  1860. local.self remove
  1861.  
  1862. level.HostagesSaved += 1
  1863. thread hostage_thread
  1864.  
  1865. pause
  1866.  
  1867. hostage01_killed:
  1868. local.self ignore killed
  1869.  
  1870. level.HostagesKilled += 1
  1871. thread hostage_thread
  1872.  
  1873. end // hostage01_thread
  1874.  
  1875.  
  1876. // hostage02_thread:
  1877. /////////////////////////////////////////////////////////////////////////////
  1878. hostage02_thread:
  1879.  
  1880. local.self anim crouch_idle
  1881.  
  1882. local.self ignoreall
  1883. local.self respondto pain
  1884. local.self respondto opendoor
  1885. local.self definestate activate hostage02_activate
  1886. local.self definestate use hostage02_use
  1887. local.self definestate killed hostage02_killed
  1888. pause
  1889.  
  1890. hostage02_activate:
  1891. local.self ignore activate
  1892.  
  1893. trigger $hostage02_snd
  1894.  
  1895. pause
  1896.  
  1897. hostage02_use:
  1898. local.self ignore use
  1899.  
  1900. // FIXME: demo
  1901. // thread blade_saved_female_dialog_thread
  1902.  
  1903. local.self runto $hostage_flee01
  1904. waitFor local.self
  1905.  
  1906. local.self remove
  1907.  
  1908. level.HostagesSaved += 1
  1909. thread hostage_thread
  1910.  
  1911. pause
  1912.  
  1913. hostage02_killed:
  1914. local.self ignore killed
  1915.  
  1916. level.HostagesKilled += 1
  1917. thread hostage_thread
  1918.  
  1919. end // hostage02_thread
  1920.  
  1921.  
  1922. // hostage03_thread:
  1923. /////////////////////////////////////////////////////////////////////////////
  1924. hostage03_thread:
  1925.  
  1926. local.self anim crouch_idle
  1927.  
  1928. local.self ignoreall
  1929. local.self respondto pain
  1930. local.self respondto opendoor
  1931. local.self definestate activate hostage03_activate
  1932. local.self definestate use hostage03_use
  1933. local.self definestate killed hostage03_killed
  1934. pause
  1935.  
  1936. hostage03_activate:
  1937. local.self ignore activate
  1938.  
  1939. local.self playsound misc/civmale/site1.wav
  1940.  
  1941. pause
  1942.  
  1943. hostage03_use:
  1944. local.self ignore use
  1945.  
  1946. // FIXME: demo
  1947. // thread blade_saved_male_dialog_thread
  1948.  
  1949. local.self runto $hostage_flee02
  1950. waitFor local.self
  1951.  
  1952. local.self remove
  1953.  
  1954. level.HostagesSaved += 1
  1955. thread hostage_thread
  1956.  
  1957. pause
  1958.  
  1959. hostage03_killed:
  1960. local.self ignore killed
  1961.  
  1962. level.HostagesKilled += 1
  1963. thread hostage_thread
  1964.  
  1965. end // hostage03_thread
  1966.  
  1967.  
  1968. // hostage04_thread:
  1969. /////////////////////////////////////////////////////////////////////////////
  1970. hostage04_thread:
  1971.  
  1972. local.self anim crouch_idle
  1973.  
  1974. local.self ignoreall
  1975. local.self respondto pain
  1976. local.self respondto opendoor
  1977. local.self definestate use hostage04_use
  1978. local.self definestate killed hostage04_killed
  1979. pause
  1980.  
  1981. hostage04_use:
  1982. local.self ignore use
  1983.  
  1984. // FIXME: demo
  1985. // thread blade_saved_female_dialog_thread
  1986.  
  1987. local.self runto $hostage_flee02
  1988. waitFor local.self
  1989.  
  1990. local.self remove
  1991.  
  1992. level.HostagesSaved += 1
  1993. thread hostage_thread
  1994.  
  1995. pause
  1996.  
  1997. hostage04_killed:
  1998. local.self ignore killed
  1999.  
  2000. level.HostagesKilled += 1
  2001. thread hostage_thread
  2002.  
  2003. end // hostage04_thread
  2004.  
  2005.  
  2006. // hostage05_thread:
  2007. /////////////////////////////////////////////////////////////////////////////
  2008. hostage05_thread:
  2009.  
  2010. local.self anim crouch_idle
  2011.  
  2012. local.self ignoreall
  2013. local.self respondto pain
  2014. local.self respondto opendoor
  2015. local.self definestate activate hostage05_activate
  2016. local.self definestate use hostage05_use
  2017. local.self definestate killed hostage05_killed
  2018. pause
  2019.  
  2020. hostage05_activate:
  2021. local.self ignore activate
  2022.  
  2023. local.self playsound misc/civmale/beg1.wav
  2024.  
  2025. pause
  2026.  
  2027. hostage05_use:
  2028. local.self ignore use
  2029.  
  2030. // FIXME: demo
  2031. // thread blade_saved_male_dialog_thread
  2032.  
  2033. local.self runto $hostage_flee03
  2034. waitFor local.self
  2035.  
  2036. local.self remove
  2037.  
  2038. level.HostagesSaved += 1
  2039. thread hostage_thread
  2040.  
  2041. pause
  2042.  
  2043. hostage05_killed:
  2044. local.self ignore killed
  2045.  
  2046. level.HostagesKilled += 1
  2047. thread hostage_thread
  2048.  
  2049. end // hostage05_thread
  2050.  
  2051.  
  2052. // hostage06_thread:
  2053. /////////////////////////////////////////////////////////////////////////////
  2054. hostage06_thread:
  2055.  
  2056. local.self anim crouch_idle
  2057.  
  2058. local.self ignoreall
  2059. local.self respondto pain
  2060. local.self respondto opendoor
  2061. local.self definestate use hostage06_use
  2062. local.self definestate killed hostage06_killed
  2063. pause
  2064.  
  2065. hostage06_use:
  2066. local.self ignore use
  2067.  
  2068. // FIXME: demo
  2069. // thread blade_saved_female_dialog_thread
  2070.  
  2071. local.self runto $hostage_flee04
  2072. waitFor local.self
  2073.  
  2074. local.self remove
  2075.  
  2076. level.HostagesSaved += 1
  2077. thread hostage_thread
  2078.  
  2079. pause
  2080.  
  2081. hostage06_killed:
  2082. local.self ignore killed
  2083.  
  2084. level.HostagesKilled += 1
  2085. thread hostage_thread
  2086.  
  2087. end // hostage06_thread
  2088.  
  2089.  
  2090. // hostage07_thread:
  2091. /////////////////////////////////////////////////////////////////////////////
  2092. hostage07_thread:
  2093.  
  2094. local.self anim crouch_idle
  2095.  
  2096. local.self ignoreall
  2097. local.self respondto pain
  2098. local.self respondto opendoor
  2099. local.self definestate activate hostage07_activate
  2100. local.self definestate use hostage07_use
  2101. local.self definestate killed hostage07_killed
  2102. pause
  2103.  
  2104. hostage07_activate:
  2105. local.self ignore activate
  2106.  
  2107. trigger $hostage07_snd
  2108.  
  2109. pause
  2110.  
  2111. hostage07_use:
  2112. local.self ignore use
  2113.  
  2114. // FIXME: demo
  2115. // thread blade_saved_male_dialog_thread
  2116.  
  2117. local.self runto hostage_flee04
  2118. waitFor local.self
  2119.  
  2120. local.self remove
  2121.  
  2122. level.HostagesSaved += 1
  2123. thread hostage_thread
  2124.  
  2125. pause
  2126.  
  2127. hostage07_killed:
  2128. local.self ignore killed
  2129.  
  2130. level.HostagesKilled += 1
  2131. thread hostage_thread
  2132.  
  2133. end // hostage07_thread
  2134.  
  2135.  
  2136. // hostage_thread:
  2137. /////////////////////////////////////////////////////////////////////////////
  2138. hostage_thread:
  2139.  
  2140. local.MustSave = level.Skill
  2141. local.MustSave += 4
  2142.  
  2143. local.AllowKilled = 3
  2144. local.AllowKilled -= level.Skill
  2145.  
  2146. level.SObjective2 ifnotequal 0 goto hostage_done
  2147. level.HostagesSaved ifgreaterequal local.MustSave goto hostage_enoughsaved
  2148. level.HostagesKilled ifgreater local.AllowKilled goto hostage_toomanykilled
  2149. goto hostage_done
  2150.  
  2151. hostage_enoughsaved:
  2152. thread hostages_saved_misscomp_thread
  2153. goto hostage_done
  2154.  
  2155. hostage_toomanykilled:
  2156. thread hostages_killed_misscomp_thread
  2157. goto hostage_done
  2158.  
  2159. hostage_done:
  2160.  
  2161. end // hostage_thread
  2162.  
  2163.  
  2164. // repel_thug_thread:
  2165. /////////////////////////////////////////////////////////////////////////////
  2166. repel_thug_thread:
  2167. local.Thug string parm.Thug
  2168. local.Node1 string local.Thug
  2169. local.Node1 append "_node1"
  2170. local.Node2 string local.Thug
  2171. local.Node2 append "_node2"
  2172. local.Rope string local.Thug
  2173. local.Rope append "_rope"
  2174. local.Glass string local.Thug
  2175. local.Glass append "_glass"
  2176.  
  2177. local.self ignoreall
  2178. local.self respondto opendoor
  2179.  
  2180. trigger local.Glass
  2181.  
  2182. local.self runto local.Node1
  2183. waitFor local.self
  2184.  
  2185. local.Rope show
  2186.  
  2187. local.self behavior Repel "repel1" local.Node2 48
  2188. waitFor local.self
  2189. wait 0.1
  2190.  
  2191. local.Rope remove
  2192.  
  2193. local.self respondtoall
  2194. local.self attackplayer
  2195.  
  2196. end repel_thug_thread
  2197.  
  2198.  
  2199. // repel_thug1_thread:
  2200. /////////////////////////////////////////////////////////////////////////////
  2201. repel_thug1_thread:
  2202.  
  2203. trigger $spawn_repel_thug1
  2204. wait 0.1
  2205.  
  2206. parm.Thug string "$repel_thug1"
  2207. $repel_thug1 thread repel_thug_thread
  2208.  
  2209. end // repel_thug1_thread
  2210.  
  2211.  
  2212. // repel_thug2_thread:
  2213. /////////////////////////////////////////////////////////////////////////////
  2214. repel_thug2_thread:
  2215.  
  2216. trigger $spawn_repel_thug2
  2217. wait 0.1
  2218.  
  2219. parm.Thug string "$repel_thug2"
  2220. $repel_thug2 thread repel_thug_thread
  2221.  
  2222. end // repel_thug2_thread
  2223.  
  2224.  
  2225. // repel_thug3_thread:
  2226. /////////////////////////////////////////////////////////////////////////////
  2227. repel_thug3_thread:
  2228.  
  2229. trigger $spawn_repel_thug3
  2230. wait 0.1
  2231.  
  2232. parm.Thug string "$repel_thug3"
  2233. $repel_thug3 thread repel_thug_thread
  2234.  
  2235. end // repel_thug3_thread
  2236.  
  2237.  
  2238. // repel_thug4_thread:
  2239. /////////////////////////////////////////////////////////////////////////////
  2240. repel_thug4_thread:
  2241.  
  2242. trigger $spawn_repel_thug4
  2243. wait 0.1
  2244.  
  2245. parm.Thug string "$repel_thug4"
  2246. $repel_thug4 thread repel_thug_thread
  2247.  
  2248. end // repel_thug4_thread
  2249.  
  2250.  
  2251. // repel_thug5_thread:
  2252. /////////////////////////////////////////////////////////////////////////////
  2253. repel_thug5_thread:
  2254.  
  2255. trigger $spawn_repel_thug5
  2256. wait 0.1
  2257.  
  2258. parm.Thug string "$repel_thug5"
  2259. $repel_thug5 thread repel_thug_thread
  2260.  
  2261. end // repel_thug5_thread
  2262.  
  2263.  
  2264. // repel_thug6_thread:
  2265. /////////////////////////////////////////////////////////////////////////////
  2266. repel_thug6_thread:
  2267.  
  2268. trigger $spawn_repel_thug6
  2269. wait 0.1
  2270.  
  2271. parm.Thug string "$repel_thug6"
  2272. $repel_thug6 thread repel_thug_thread
  2273.  
  2274. end // repel_thug6_thread
  2275.  
  2276.  
  2277. // repel_thug7_thread:
  2278. /////////////////////////////////////////////////////////////////////////////
  2279. repel_thug7_thread:
  2280.  
  2281. trigger $spawn_repel_thug7
  2282. wait 0.1
  2283.  
  2284. parm.Thug string "$repel_thug7"
  2285. $repel_thug7 thread repel_thug_thread
  2286.  
  2287. end // repel_thug7_thread
  2288.  
  2289.  
  2290. // repel_thug8_thread:
  2291. /////////////////////////////////////////////////////////////////////////////
  2292. repel_thug8_thread:
  2293.  
  2294. trigger $spawn_repel_thug8
  2295. wait 0.1
  2296.  
  2297. parm.Thug string "$repel_thug8"
  2298. $repel_thug8 thread repel_thug_thread
  2299.  
  2300. end // repel_thug8_thread
  2301.  
  2302.  
  2303. // repel_thug9_thread:
  2304. /////////////////////////////////////////////////////////////////////////////
  2305. repel_thug9_thread:
  2306.  
  2307. trigger $spawn_repel_thug9
  2308. wait 0.1
  2309.  
  2310. parm.Thug string "$repel_thug9"
  2311. $repel_thug9 thread repel_thug_thread
  2312.  
  2313. end // repel_thug9_thread
  2314.  
  2315.  
  2316. // repel_thug10_thread:
  2317. /////////////////////////////////////////////////////////////////////////////
  2318. repel_thug10_thread:
  2319.  
  2320. trigger $spawn_repel_thug10
  2321. wait 0.1
  2322.  
  2323. parm.Thug string "$repel_thug10"
  2324. $repel_thug10 thread repel_thug_thread
  2325.  
  2326. end // repel_thug10_thread
  2327.  
  2328.  
  2329. // repel_thug11_thread:
  2330. /////////////////////////////////////////////////////////////////////////////
  2331. repel_thug11_thread:
  2332.  
  2333. trigger $spawn_repel_thug11
  2334. wait 0.1
  2335.  
  2336. parm.Thug string "$repel_thug11"
  2337. $repel_thug11 thread repel_thug_thread
  2338.  
  2339. end // repel_thug11_thread
  2340.  
  2341.  
  2342. // battle_hc01_thread:
  2343. /////////////////////////////////////////////////////////////////////////////
  2344. battle_hc01_thread:
  2345.  
  2346. local.self ignoreall
  2347. local.self respondto opendoor
  2348. local.self definestate activate battle_hc01_activate
  2349. pause
  2350.  
  2351. battle_hc01_activate:
  2352. local.self definestate activate battle_hc01_activate2
  2353.  
  2354. // FIXME: add the code to make the battle harder
  2355. // If set, the player crashed and must enter the bank from the lower entrance
  2356. // make sure that they encounter more enemyies at the start as a result of
  2357. // taking the less desireable entrance
  2358. // level.intro_start2 ifequal 1 ......
  2359.  
  2360. trigger $battle_hc02
  2361. trigger $battle_hc03
  2362. trigger $battle_thug01
  2363. trigger $battle_thug02
  2364. trigger $battle_thug03
  2365.  
  2366. $revolvingdoor1 playsound impact/glass/glassbrk/mix1.wav
  2367. $revolvingdoor2 shatter "0 0 0" 50 10 25 .05 0
  2368. $revolvingdoor2 remove
  2369.  
  2370. local.self respondtoall
  2371.  
  2372. local.self attack $battle_thug02
  2373.  
  2374. pause
  2375.  
  2376. battle_hc01_activate2:
  2377. local.self ignore activate
  2378. local.self ignoreall
  2379.  
  2380. local.self runto $battle_hc_flee
  2381. waitFor local.self
  2382.  
  2383. local.self remove
  2384.  
  2385. end // battle_hc01_thread
  2386.  
  2387.  
  2388. // battle_hc02_thread:
  2389. /////////////////////////////////////////////////////////////////////////////
  2390. battle_hc02_thread:
  2391.  
  2392. local.self ignoreall
  2393. local.self respondto opendoor
  2394. local.self definestate activate battle_hc02_activate
  2395. pause
  2396.  
  2397. battle_hc02_activate:
  2398. local.self definestate activate battle_hc02_activate2
  2399.  
  2400. local.self respondtoall
  2401.  
  2402. local.self attack $battle_thug01
  2403.  
  2404. pause
  2405.  
  2406. battle_hc02_activate2:
  2407. local.self ignore activate
  2408. local.self ignoreall
  2409.  
  2410. local.self runto $battle_hc_flee
  2411. waitFor local.self
  2412.  
  2413. local.self remove
  2414.  
  2415.  
  2416. end // battle_hc02_thread
  2417.  
  2418.  
  2419. // spawn_battle_thug_thread:
  2420. /////////////////////////////////////////////////////////////////////////////
  2421. spawn_battle_thug_thread:
  2422.  
  2423. level.BattleThugsKilled += 1
  2424.  
  2425. // All the thugs are gone, have the HC guys take off
  2426. level.BattleThugsKilled ifequal 7 trigger $battle_hc01
  2427. level.BattleThugsKilled ifequal 7 trigger $battle_hc02
  2428.  
  2429. level.BattleThugsKilled ifequal 1 goto spawn_battle_thug1
  2430. level.BattleThugsKilled ifequal 2 goto spawn_battle_thug2
  2431. level.BattleThugsKilled ifequal 3 goto spawn_battle_thug3
  2432. level.BattleThugsKilled ifequal 4 goto spawn_battle_thug4
  2433. goto spawn_battle_thug_done
  2434.  
  2435. spawn_battle_thug1:
  2436. trigger $spawn_battle_thug04
  2437. wait 0.1
  2438. $battle_thug04 thread battle_thug04_thread
  2439.  
  2440. goto spawn_battle_thug_done
  2441.  
  2442. spawn_battle_thug2:
  2443. trigger $spawn_battle_thug05
  2444. wait 0.1
  2445. $battle_thug05 thread battle_thug05_thread
  2446.  
  2447. goto spawn_battle_thug_done
  2448.  
  2449. spawn_battle_thug3:
  2450. trigger $spawn_battle_thug06
  2451. wait 0.1
  2452. $battle_thug06 thread battle_thug06_thread
  2453.  
  2454. goto spawn_battle_thug_done
  2455.  
  2456. spawn_battle_thug4:
  2457. trigger $spawn_battle_thug07
  2458. wait 0.1
  2459. $battle_thug07 thread battle_thug07_thread
  2460.  
  2461. goto spawn_battle_thug_done
  2462.  
  2463. spawn_battle_thug_done:
  2464.  
  2465. end // spawn_battle_thug_thread
  2466.  
  2467.  
  2468. // battle_thug01_thread:
  2469. /////////////////////////////////////////////////////////////////////////////
  2470. battle_thug01_thread:
  2471.  
  2472. local.self ignoreall
  2473. local.self respondto opendoor
  2474. local.self definestate activate battle_thug01_activate
  2475. local.self definestate killed battle_thug01_killed
  2476. pause
  2477.  
  2478. battle_thug01_activate:
  2479. local.self ignore activate
  2480. local.self respondtoall
  2481.  
  2482. pause
  2483.  
  2484. battle_thug01_killed:
  2485. local.self ignore killed
  2486.  
  2487. thread spawn_battle_thug_thread
  2488.  
  2489. end // battle_thug01_thread
  2490.  
  2491.  
  2492. // battle_thug02_thread:
  2493. /////////////////////////////////////////////////////////////////////////////
  2494. battle_thug02_thread:
  2495.  
  2496. local.self ignoreall
  2497. local.self respondto opendoor
  2498. local.self definestate activate battle_thug02_activate
  2499. local.self definestate killed battle_thug02_killed
  2500. pause
  2501.  
  2502. battle_thug02_activate:
  2503. local.self ignore activate
  2504. local.self respondtoall
  2505.  
  2506. pause
  2507.  
  2508. battle_thug02_killed:
  2509. local.self ignore killed
  2510.  
  2511. thread spawn_battle_thug_thread
  2512.  
  2513. end // battle_thug02_thread
  2514.  
  2515.  
  2516. // battle_thug03_thread:
  2517. /////////////////////////////////////////////////////////////////////////////
  2518. battle_thug03_thread:
  2519.  
  2520. local.self ignoreall
  2521. local.self respondto opendoor
  2522. local.self definestate activate battle_thug03_activate
  2523. local.self definestate killed battle_thug03_killed
  2524. pause
  2525.  
  2526. battle_thug03_activate:
  2527. local.self ignore activate
  2528.  
  2529. local.self respondtoall
  2530.  
  2531. pause
  2532.  
  2533. battle_thug03_killed:
  2534. local.self ignore killed
  2535.  
  2536. thread spawn_battle_thug_thread
  2537.  
  2538. end // battle_thug03_thread
  2539.  
  2540.  
  2541. // battle_thug04_thread:
  2542. /////////////////////////////////////////////////////////////////////////////
  2543. battle_thug04_thread:
  2544.  
  2545. local.self definestate killed battle_thug04_killed
  2546. local.self attackplayer
  2547. pause
  2548.  
  2549. battle_thug04_killed:
  2550. local.self ignore killed
  2551.  
  2552. thread spawn_battle_thug_thread
  2553.  
  2554. end // battle_thug04_thread
  2555.  
  2556.  
  2557. // battle_thug05_thread:
  2558. /////////////////////////////////////////////////////////////////////////////
  2559. battle_thug05_thread:
  2560.  
  2561. local.self definestate killed battle_thug05_killed
  2562. local.self attackplayer
  2563. pause
  2564.  
  2565. battle_thug05_killed:
  2566. local.self ignore killed
  2567.  
  2568. thread spawn_battle_thug_thread
  2569.  
  2570. end // battle_thug05_thread
  2571.  
  2572.  
  2573. // battle_thug06_thread:
  2574. /////////////////////////////////////////////////////////////////////////////
  2575. battle_thug06_thread:
  2576.  
  2577. local.self definestate killed battle_thug06_killed
  2578. local.self attackplayer
  2579. pause
  2580.  
  2581. battle_thug06_killed:
  2582. local.self ignore killed
  2583.  
  2584. thread spawn_battle_thug_thread
  2585.  
  2586. end // battle_thug06_thread
  2587.  
  2588.  
  2589. // battle_thug07_thread:
  2590. /////////////////////////////////////////////////////////////////////////////
  2591. battle_thug07_thread:
  2592.  
  2593. local.self definestate killed battle_thug07_killed
  2594. local.self attackplayer
  2595. pause
  2596.  
  2597. battle_thug07_killed:
  2598. local.self ignore killed
  2599.  
  2600. thread spawn_battle_thug_thread
  2601.  
  2602. end // battle_thug07_thread
  2603.  
  2604.  
  2605. // mancini_thread:
  2606. /////////////////////////////////////////////////////////////////////////////
  2607. mancini_thread:
  2608.  
  2609. local.self nodamage
  2610. local.self anim idle_giving_orders
  2611.  
  2612. local.self ignoreall
  2613. local.self respondto opendoor
  2614. local.self definestate activate mancini_activate1
  2615. pause
  2616.  
  2617. // Mancini seen the first time
  2618. mancini_activate1:
  2619. local.self ignore activate
  2620.  
  2621. $teller_securitygate playsound environment/doors/door1cls.wav
  2622. $teller_securitygate time 1
  2623. $teller_securitygate moveDown 144
  2624. waitFor $teller_securitygate
  2625.  
  2626. thread mancini_seen1_dialog_thread
  2627. waitForThread parm.previousthread
  2628.  
  2629. //trigger $mancini_thug01
  2630. //trigger $mancini_thug02
  2631.  
  2632. trigger $spawn_mancini_thug01
  2633. trigger $spawn_mancini_thug02
  2634. trigger $spawn_mancini_thug03
  2635. trigger $mancini_thug06
  2636. wait 0.1
  2637.  
  2638. $mancini_thug01 thread mancini_thug01_thread
  2639. $mancini_thug02 thread mancini_thug02_thread
  2640. $mancini_thug03 thread mancini_thug03_thread
  2641.  
  2642. local.self runto $mancini_node1
  2643. waitFor local.self
  2644.  
  2645. thread capture_mancini_misscomp_thread
  2646.  
  2647. local.self runto $mancini_node2
  2648. waitFor local.self
  2649.  
  2650. local.self turnto 0
  2651. waitFor local.self
  2652.  
  2653. local.self anim idle_tantrum
  2654.  
  2655. $teller_securitygate playsound environment/doors/door1opn.wav
  2656. $teller_securitygate time 1
  2657. $teller_securitygate moveUp 144
  2658. waitFor $teller_securitygate
  2659.  
  2660. $teller_securitygate remove
  2661.  
  2662. local.self definestate activate mancini_activate2
  2663. pause
  2664.  
  2665. // Mancini seen the second time
  2666. mancini_activate2:
  2667. local.self ignore activate
  2668.  
  2669. thread mancini_seen2_dialog_thread
  2670. wait 1
  2671.  
  2672. local.self runto $mancini_node3
  2673. waitFor local.self
  2674.  
  2675. trigger $vault_trigger
  2676. thread need_vault_combo_dialog_thread
  2677.  
  2678. local.self runto $mancini_node4
  2679. waitFor local.self
  2680.  
  2681. local.self runto $mancini_node5
  2682. waitFor local.self
  2683.  
  2684. local.self anim idle_giving_orders
  2685.  
  2686. local.self definestate activate mancini_activate3
  2687. pause
  2688.  
  2689. // Mancini seen the third time
  2690. mancini_activate3:
  2691. local.self ignore activate
  2692.  
  2693. thread mancini_seen3_dialog_thread
  2694. waitForThread parm.previousthread
  2695.  
  2696. local.self anim jump_in_hole
  2697. waitFor local.self
  2698.  
  2699. $mancini remove
  2700.  
  2701. end // mancini_thread
  2702.  
  2703.  
  2704. // mancini_thug01_thread:
  2705. /////////////////////////////////////////////////////////////////////////////
  2706. mancini_thug01_thread:
  2707.  
  2708. local.self definestate killed mancini_thug01_killed
  2709. local.self attackplayer
  2710. pause
  2711.  
  2712. mancini_thug01_killed:
  2713. local.self ignore killed
  2714.  
  2715. thread repel_thug6_thread
  2716.  
  2717. end // mancini_thug01_thread
  2718.  
  2719.  
  2720. // mancini_thug02_thread:
  2721. /////////////////////////////////////////////////////////////////////////////
  2722. mancini_thug02_thread:
  2723.  
  2724. local.self definestate killed mancini_thug02_killed
  2725. local.self attackplayer
  2726. pause
  2727.  
  2728. mancini_thug02_killed:
  2729. local.self ignore killed
  2730.  
  2731. thread repel_thug7_thread
  2732.  
  2733. end // mancini_thug02_thread
  2734.  
  2735.  
  2736. // mancini_thug03_thread:
  2737. /////////////////////////////////////////////////////////////////////////////
  2738. mancini_thug03_thread:
  2739.  
  2740. local.self attackplayer
  2741.  
  2742. end // mancini_thug03_thread
  2743.  
  2744.  
  2745. // mancini_thug04_thread:
  2746. /////////////////////////////////////////////////////////////////////////////
  2747. mancini_thug04_thread:
  2748.  
  2749. end // mancini_thug04_thread
  2750.  
  2751.  
  2752. // mancini_thug05_thread:
  2753. /////////////////////////////////////////////////////////////////////////////
  2754. mancini_thug05_thread:
  2755.  
  2756. end // mancini_thug05_thread
  2757.  
  2758.  
  2759. // mancini_thug06_thread:
  2760. /////////////////////////////////////////////////////////////////////////////
  2761. mancini_thug06_thread:
  2762.  
  2763. local.self ignoreall
  2764. local.self respondto opendoor
  2765. local.self definestate activate mancini_thug06_activate
  2766. pause
  2767.  
  2768. mancini_thug06_activate:
  2769. local.self ignore activate
  2770.  
  2771. // Wait for mancini to get through the door
  2772. wait 2
  2773.  
  2774. local.self runto $mancini_node1
  2775. waitFor local.self
  2776.  
  2777. local.self runto $mancini_thug06_node1
  2778. waitFor local.self
  2779.  
  2780. local.self runto $mancini_thug06_node2
  2781. waitFor local.self
  2782.  
  2783. local.self turnto 315
  2784. waitFor local.self
  2785.  
  2786. local.self remove
  2787. wait 0.1
  2788.  
  2789. trigger $spawn_mancini_thug07
  2790.  
  2791. end // mancini_thug06_thread
  2792.  
  2793.  
  2794. // spawn_mancini_thug07_thread:
  2795. /////////////////////////////////////////////////////////////////////////////
  2796. spawn_mancini_thug07_thread:
  2797.  
  2798. trigger $spawn_mancini_thug07
  2799. wait 0.1
  2800.  
  2801. $mancini_thug07 thread mancini_thug07_thread
  2802.  
  2803. end // spawn_mancini_thug07_thread
  2804.  
  2805.  
  2806. // mancini_thug07_thread:
  2807. /////////////////////////////////////////////////////////////////////////////
  2808. mancini_thug07_thread:
  2809.  
  2810. local.self attackplayer
  2811.  
  2812. end // mancini_thug07_thread
  2813.  
  2814.  
  2815. // hostage1_thug01_thread:
  2816. /////////////////////////////////////////////////////////////////////////////
  2817. hostage1_thug01_thread:
  2818.  
  2819. local.self ignoresounds
  2820. local.self definestate activate hostage_thug01_activate
  2821. pause
  2822.  
  2823. hostage_thug01_activate:
  2824. local.self ignore activate
  2825. local.self respondtosounds
  2826.  
  2827. level.Skill ifgreater 0 local.self attack $hostage01
  2828. level.Skill ifequal 0 local.self attackplayer
  2829.  
  2830. end // hostage1_thug01_thread
  2831.  
  2832.  
  2833. // hostage1_thug02_thread:
  2834. /////////////////////////////////////////////////////////////////////////////
  2835. hostage1_thug02_thread:
  2836.  
  2837. end // hostage1_thug02_thread
  2838.  
  2839.  
  2840. // hostage1_thug03_thread:
  2841. /////////////////////////////////////////////////////////////////////////////
  2842. hostage1_thug03_thread:
  2843.  
  2844. local.self definestate activate hostage1_thug03_activate
  2845. pause
  2846.  
  2847. hostage1_thug03_activate:
  2848. local.self ignore activate
  2849.  
  2850. // FIXME: FULLGAME: have him attack hostage
  2851. local.self attackplayer
  2852.  
  2853. end // hostage1_thug03_thread
  2854.  
  2855.  
  2856. // hostage2_thug01_thread:
  2857. /////////////////////////////////////////////////////////////////////////////
  2858. hostage2_thug01_thread:
  2859.  
  2860. local.self definestate killed hostage2_thug01_killed
  2861. pause
  2862.  
  2863. hostage2_thug01_killed:
  2864. local.self ignore killed
  2865.  
  2866. thread repel_thug8_thread
  2867.  
  2868. end // hostage2_thug01_thread
  2869.  
  2870.  
  2871. // hostage2_thug02_thread:
  2872. /////////////////////////////////////////////////////////////////////////////
  2873. hostage2_thug02_thread:
  2874.  
  2875. local.self definestate killed hostage2_thug02_killed
  2876. pause
  2877.  
  2878. hostage2_thug02_killed:
  2879. local.self ignore killed
  2880.  
  2881. thread repel_thug9_thread
  2882.  
  2883. end // hostage2_thug02_thread
  2884.  
  2885.  
  2886. // hostage2_thug03_thread:
  2887. /////////////////////////////////////////////////////////////////////////////
  2888. hostage2_thug03_thread:
  2889.  
  2890. local.self definestate activate hostage2_thug03_activate
  2891. pause
  2892.  
  2893. hostage2_thug03_activate:
  2894. local.self ignore activate
  2895.  
  2896. local.self attackplayer
  2897.  
  2898. end // hostage2_thug03_thread
  2899.  
  2900.  
  2901. // hostage3_thug01_thread:
  2902. /////////////////////////////////////////////////////////////////////////////
  2903. hostage3_thug01_thread:
  2904.  
  2905. end // hostage3_thug01_thread
  2906.  
  2907.  
  2908. // hostage3_thug02_thread:
  2909. /////////////////////////////////////////////////////////////////////////////
  2910. hostage3_thug02_thread:
  2911.  
  2912. end // hostage3_thug02_thread
  2913.  
  2914.  
  2915. // hostage3_thug03_thread:
  2916. /////////////////////////////////////////////////////////////////////////////
  2917. hostage3_thug03_thread:
  2918.  
  2919. end // hostage3_thug03_thread
  2920.  
  2921.  
  2922. // hostage3_thug04_thread:
  2923. /////////////////////////////////////////////////////////////////////////////
  2924. hostage3_thug04_thread:
  2925.  
  2926.  
  2927.  
  2928. end // hostage3_thug04_thread
  2929.  
  2930.  
  2931. // hostage4_thug01_thread:
  2932. /////////////////////////////////////////////////////////////////////////////
  2933. hostage4_thug01_thread:
  2934.  
  2935. local.self respondto opendoor
  2936. local.self definestate activate hostage4_thug01_activate
  2937. pause
  2938.  
  2939. hostage4_thug01_activate:
  2940. local.self ignore activate
  2941.  
  2942. trigger $table1
  2943. trigger $hostage4_thug02
  2944.  
  2945. local.self attackplayer
  2946.  
  2947. end // hostage4_thug01_thread
  2948.  
  2949.  
  2950. // hostage4_thug02_thread:
  2951. /////////////////////////////////////////////////////////////////////////////
  2952. hostage4_thug02_thread:
  2953.  
  2954. local.self definestate activate hostage4_thug02_activate
  2955. pause
  2956.  
  2957. hostage4_thug02_activate:
  2958. local.self ignore activate
  2959.  
  2960. local.self attackplayer
  2961.  
  2962. end // hostage4_thug02_thread
  2963.  
  2964.  
  2965. // securityroom_boss_thread:
  2966. /////////////////////////////////////////////////////////////////////////////
  2967. securityroom_boss_thread:
  2968.  
  2969. local.self definestate activate securityroom_boss_activate
  2970. local.self definestate killed securityroom_boss_killled
  2971. pause
  2972.  
  2973. securityroom_boss_activate:
  2974. local.self ignore activate
  2975.  
  2976. local.self attackplayer
  2977.  
  2978. end // securityroom_boss_thread
  2979.  
  2980. securityroom_boss_killled:
  2981. local.self ignore killed
  2982.  
  2983. thread security_room_entered_misscomp_thread
  2984.  
  2985. end // securityroom_boss_thread
  2986.  
  2987.  
  2988. // thug01_thread:
  2989. /////////////////////////////////////////////////////////////////////////////
  2990. thug01_thread:
  2991.  
  2992. local.self definestate idle thug01_patrol
  2993. local.self definestate killed thug01_killed
  2994. local.self state idle
  2995. pause
  2996.  
  2997. thug01_patrol:
  2998. local.self ignore activate
  2999.  
  3000. local.self walkto $thug01_node1
  3001. waitFor local.self
  3002.  
  3003. local.self walkto $thug01_node2
  3004. waitFor local.self
  3005.  
  3006. local.self anim guerilla_talk
  3007. wait 5
  3008.  
  3009. local.self walkto $thug01_node1
  3010. waitFor local.self
  3011.  
  3012. goto thug01_patrol
  3013.  
  3014. thug01_killed:
  3015.  
  3016. trigger $spawn_thug01_killed01a
  3017. wait 0.1
  3018. $thug01_killed01 thread thug01_killed01_thread
  3019.  
  3020. trigger $thug03
  3021.  
  3022. end // thug01_thread
  3023.  
  3024.  
  3025. // thug01_killed01_thread:
  3026. /////////////////////////////////////////////////////////////////////////////
  3027. thug01_killed01_thread:
  3028.  
  3029. local.self attackplayer
  3030.  
  3031. end // thug01_killed01_thread
  3032.  
  3033.  
  3034. // thug02_thread:
  3035. /////////////////////////////////////////////////////////////////////////////
  3036. thug02_thread:
  3037.  
  3038. local.self definestate idle thug02_patrol
  3039. local.self definestate killed thug02_killed
  3040. local.self state idle
  3041. pause
  3042.  
  3043. thug02_patrol:
  3044. local.self walkto $thug02_node1
  3045. waitFor local.self
  3046.  
  3047. local.self walkto $thug02_node2
  3048. waitFor local.self
  3049.  
  3050. goto thug02_patrol
  3051.  
  3052. thug02_killed:
  3053.  
  3054. trigger $spawn_thug02_killed01a
  3055. wait 0.1
  3056. $thug02_killed01 thread thug02_killed01_thread
  3057.  
  3058. end // thug02_thread
  3059.  
  3060.  
  3061. // thug02_killed01_thread:
  3062. /////////////////////////////////////////////////////////////////////////////
  3063. thug02_killed01_thread:
  3064.  
  3065. local.self attackplayer
  3066.  
  3067. end // thug02_killed01_thread
  3068.  
  3069.  
  3070. // thug03_thread:
  3071. /////////////////////////////////////////////////////////////////////////////
  3072. thug03_thread:
  3073.  
  3074. local.self ignoresounds
  3075. local.self definestate activate thug03_activate
  3076. pause
  3077.  
  3078. thug03_activate:
  3079. local.self ignore activate
  3080. local.self respondtosounds
  3081.  
  3082. local.self attackplayer
  3083.  
  3084. end // thug03_thread
  3085.  
  3086.  
  3087. // thug04_thread:
  3088. /////////////////////////////////////////////////////////////////////////////
  3089. thug04_thread:
  3090.  
  3091. local.self definestate idle thug04_patrol
  3092. local.self definestate activate thug04_activate
  3093. local.self definestate killed thug04_killed
  3094. local.self state idle
  3095. pause
  3096.  
  3097. thug04_patrol:
  3098. local.self walkto $thug04_node1
  3099. waitFor local.self
  3100.  
  3101. local.self walkto $thug04_node2
  3102. waitFor local.self
  3103.  
  3104. goto thug04_patrol
  3105.  
  3106. thug04_activate:
  3107. local.self ignore activate
  3108.  
  3109. trigger $thug05
  3110. thread revolvingdoor1_remove_thread
  3111.  
  3112. local.self attackplayer
  3113.  
  3114. end // thug04_thread
  3115.  
  3116. thug04_killed:
  3117. thread repel_thug10_thread
  3118.  
  3119. end // thug04_thread
  3120.  
  3121.  
  3122. // thug05_thread:
  3123. /////////////////////////////////////////////////////////////////////////////
  3124. thug05_thread:
  3125.  
  3126. local.self definestate idle thug05_patrol
  3127. local.self definestate activate thug05_activate
  3128. local.self definestate killed thug05_killed
  3129. local.self state idle
  3130. pause
  3131.  
  3132. thug05_patrol:
  3133. local.self walkto $thug05_node1
  3134. waitFor local.self
  3135.  
  3136. local.self walkto $thug05_node2
  3137. waitFor local.self
  3138.  
  3139. goto thug05_patrol
  3140.  
  3141. thug05_activate:
  3142. local.self ignore activate
  3143.  
  3144. thread revolvingdoor1_remove_thread
  3145.  
  3146. local.self attackplayer
  3147.  
  3148. end // thug05_thread
  3149.  
  3150. thug05_killed:
  3151. thread repel_thug11_thread
  3152.  
  3153. end // thug05_thread
  3154.  
  3155.  
  3156. // thug06_thread:
  3157. /////////////////////////////////////////////////////////////////////////////
  3158. thug06_thread:
  3159.  
  3160. end // thug06_thread
  3161.  
  3162.  
  3163. //===========================================================================
  3164. //===========================================================================
  3165. // DIALOG
  3166. //===========================================================================
  3167. //===========================================================================
  3168. // no_exit_dialog_thread:
  3169. /////////////////////////////////////////////////////////////////////////////
  3170. no_exit_dialog_thread:
  3171.  
  3172. thread dialog::jc_sightseeing
  3173. waitForThread parm.previousthread
  3174.  
  3175. end // no_exit_dialog_thread
  3176.  
  3177.  
  3178. // mancini_what_get_paid_dialog_thread:
  3179. /////////////////////////////////////////////////////////////////////////////
  3180. mancini_what_get_paid_dialog_thread:
  3181.  
  3182. parm.mancini1 string "$start_mancini"
  3183. thread dialog::mancini_what_get_paid_for
  3184. waitForThread parm.previousthread
  3185.  
  3186. end // mancini_what_get_paid_dialog_thread
  3187.  
  3188.  
  3189. // thug_hurryup_dialog_thread:
  3190. /////////////////////////////////////////////////////////////////////////////
  3191. thug_hurryup_dialog_thread:
  3192.  
  3193. parm.thug1 string "$start_thug01"
  3194. thread dialog::thug_hurry_up
  3195. waitForThread parm.previousthread
  3196.  
  3197. end // thug_hurryup_dialog_thread
  3198.  
  3199.  
  3200. // thug_move_move_move_dialog_thread:
  3201. /////////////////////////////////////////////////////////////////////////////
  3202. thug_move_move_move_dialog_thread:
  3203.  
  3204. parm.thug1 string "$start_thug02"
  3205. thread dialog::thug_move_move_move
  3206. waitForThread parm.previousthread
  3207.  
  3208. end // thug_move_move_move_dialog_thread
  3209.  
  3210.  
  3211. // blade_saved_female_dialog_thread:
  3212. /////////////////////////////////////////////////////////////////////////////
  3213. blade_saved_female_dialog_thread:
  3214.  
  3215. local.Count randomint 2
  3216.  
  3217. local.Count ifequal 0 thread dialog::blade_civfemale_rescue1
  3218. local.Count ifequal 1 thread dialog::blade_civfemale_rescue2
  3219. waitForThread parm.previousthread
  3220.  
  3221. end // blade_saved_female_dialog_thread
  3222.  
  3223.  
  3224. // blade_saved_male_dialog_thread:
  3225. /////////////////////////////////////////////////////////////////////////////
  3226. blade_saved_male_dialog_thread:
  3227.  
  3228. local.Count randomint 2
  3229.  
  3230. local.Count ifequal 0 thread dialog::blade_civmale_rescue1
  3231. local.Count ifequal 1 thread dialog::blade_civmale_rescue2
  3232. waitForThread parm.previousthread
  3233.  
  3234. end // blade_saved_male_dialog_thread
  3235.  
  3236.  
  3237. // jc_clear_bank_out_dialog_thread:
  3238. /////////////////////////////////////////////////////////////////////////////
  3239. jc_clear_bank_out_dialog_thread:
  3240.  
  3241. thread dialog::jc_clear_bank_out
  3242. waitForThread parm.previousthread
  3243.  
  3244. end // jc_clear_bank_out_dialog_thread
  3245.  
  3246.  
  3247. // quarter_dialog_thread:
  3248. /////////////////////////////////////////////////////////////////////////////
  3249. quarter_dialog_thread:
  3250.  
  3251. thread dialog::blade_finds_quarter1
  3252. waitForThread parm.previousthread
  3253.  
  3254. end // quarter_dialog_thread
  3255.  
  3256.  
  3257. // thug_trouble_at_vault_dialog_thread:
  3258. /////////////////////////////////////////////////////////////////////////////
  3259. thug_trouble_at_vault_dialog_thread:
  3260.  
  3261. parm.thug1 string "$mancini_thug06"
  3262. thread dialog::thug_trouble_at_vault
  3263. waitForThread parm.previousthread
  3264.  
  3265. end // thug_trouble_at_vault_dialog_thread
  3266.  
  3267.  
  3268. // need_vault_combo_dialog_thread:
  3269. /////////////////////////////////////////////////////////////////////////////
  3270. need_vault_combo_dialog_thread:
  3271.  
  3272. wait 2
  3273.  
  3274. thread dialog::blade_needs_vault_combo
  3275. waitForThread parm.previousthread
  3276.  
  3277. end // need_vault_combo_dialog_thread
  3278.  
  3279.  
  3280. // identcard_dialog_thread:
  3281. /////////////////////////////////////////////////////////////////////////////
  3282. identcard_dialog_thread:
  3283.  
  3284. thread dialog::jc_handy1
  3285. waitForThread parm.previousthread
  3286.  
  3287. end // end identcard_dialog_thread
  3288.  
  3289.  
  3290. // jc_warn_dialog_thread:
  3291. /////////////////////////////////////////////////////////////////////////////
  3292. jc_warn_dialog_thread:
  3293.  
  3294. thread dialog::jneed_to_shut_down_sec1
  3295. waitForThread parm.previousthread
  3296.  
  3297. end // jc_warn_dialog_thread
  3298.  
  3299.  
  3300. // lockerdoor_dialog_thread:
  3301. /////////////////////////////////////////////////////////////////////////////
  3302. lockerdoor_dialog_thread:
  3303.  
  3304. thread dialog::jc_handy1
  3305. waitForThread parm.previousthread
  3306.  
  3307. end // lockerdoor_dialog_thread
  3308.  
  3309.  
  3310. // cash1_dialog_thread:
  3311. /////////////////////////////////////////////////////////////////////////////
  3312. cash1_dialog_thread:
  3313.  
  3314. thread dialog::blade_takes_money1
  3315. waitForThread parm.previousthread
  3316.  
  3317. end // cash1_dialog_thread
  3318.  
  3319.  
  3320. // cash2_dialog_thread:
  3321. /////////////////////////////////////////////////////////////////////////////
  3322. cash2_dialog_thread:
  3323.  
  3324. thread dialog::blade_takes_money2
  3325. waitForThread parm.previousthread
  3326.  
  3327. end // cash2_dialog_thread
  3328.  
  3329.  
  3330. // destroys_furniture1_dialog_thread:
  3331. /////////////////////////////////////////////////////////////////////////////
  3332. destroys_furniture1_dialog_thread:
  3333.  
  3334. thread dialog::blade_destroys_furniture1
  3335. waitForThread parm.previousthread
  3336.  
  3337. end // destroys_furniture1_dialog_thread
  3338.  
  3339.  
  3340. // destroys_furniture2_dialog_thread:
  3341. /////////////////////////////////////////////////////////////////////////////
  3342. destroys_furniture2_dialog_thread:
  3343.  
  3344. thread dialog::blade_destroys_furniture2
  3345. waitForThread parm.previousthread
  3346.  
  3347. end // destroys_furniture2_dialog_thread
  3348.  
  3349.  
  3350. // destroys_furniture3_dialog_thread:
  3351. /////////////////////////////////////////////////////////////////////////////
  3352. destroys_furniture3_dialog_thread:
  3353.  
  3354. thread dialog::blade_destroys_furniture3
  3355. waitForThread parm.previousthread
  3356.  
  3357. end // destroys_furniture3_dialog_thread
  3358.  
  3359.  
  3360. // destroys_furniture4_dialog_thread:
  3361. /////////////////////////////////////////////////////////////////////////////
  3362. destroys_furniture4_dialog_thread:
  3363.  
  3364. thread dialog::blade_destroys_furniture4
  3365. waitForThread parm.previousthread
  3366.  
  3367. end // destroys_furniture4_dialog_thread
  3368.  
  3369.  
  3370. // destroys_property8_dialog_thread:
  3371. /////////////////////////////////////////////////////////////////////////////
  3372. destroys_property8_dialog_thread:
  3373.  
  3374. thread dialog::blade_destroys_property8
  3375. waitForThread parm.previousthread
  3376.  
  3377. end // destroys_property8_dialog_thread
  3378.  
  3379.  
  3380. // destroys_plant1_dialog_thread:
  3381. /////////////////////////////////////////////////////////////////////////////
  3382. destroys_plant1_dialog_thread:
  3383.  
  3384. thread dialog::blade_destroys_plant
  3385. waitForThread parm.previousthread
  3386.  
  3387. end // destroys_plant1_dialog_thread
  3388.  
  3389.  
  3390. // phone_bruno_dialog_thread:
  3391. /////////////////////////////////////////////////////////////////////////////
  3392. phone_bruno_dialog_thread:
  3393.  
  3394. parm.phone string "$tele1"
  3395. thread dialog::phone_bruno
  3396. waitForThread parm.previousthread
  3397.  
  3398. end // phone_bruno_dialog_thread
  3399.  
  3400.  
  3401. // phone_cinema_dialog_thread:
  3402. /////////////////////////////////////////////////////////////////////////////
  3403. phone_cinema_dialog_thread:
  3404.  
  3405. parm.phone string "$tele2"
  3406. thread dialog::phone_cinema
  3407. waitForThread parm.previousthread
  3408.  
  3409. end // phone_cinema_dialog_thread
  3410.  
  3411.  
  3412. // mancini_seen1_dialog_thread:
  3413. /////////////////////////////////////////////////////////////////////////////
  3414. mancini_seen1_dialog_thread:
  3415.  
  3416. parm.mancini1 string "$mancini"
  3417. thread dialog::mancini_damn_blade
  3418. waitForThread parm.previousthread
  3419.  
  3420. parm.mancini1 string "$mancini"
  3421. parm.thug1 string $mancini_thug03
  3422. thread dialog::mancini_dont_stand_kill
  3423. waitForThread parm.previousthread
  3424.  
  3425. end // mancini_seen1_dialog_thread
  3426.  
  3427.  
  3428. // mancini_seen2_dialog_thread:
  3429. /////////////////////////////////////////////////////////////////////////////
  3430. mancini_seen2_dialog_thread:
  3431.  
  3432. parm.mancini1 string "$mancini"
  3433. thread dialog::mancini_dont_let_him_thru
  3434. waitForThread parm.previousthread
  3435.  
  3436. //parm.mancini1 string "$mancini"
  3437. //thread dialog::mancini_hurry
  3438. //waitForThread parm.previousthread
  3439.  
  3440. thread thug_trouble_at_vault_dialog_thread
  3441. waitForThread parm.previousthread
  3442.  
  3443. end // mancini_seen2_dialog_thread
  3444.  
  3445.  
  3446. // mancini_seen3_dialog_thread:
  3447. /////////////////////////////////////////////////////////////////////////////
  3448. mancini_seen3_dialog_thread:
  3449.  
  3450. parm.thug1 string "$thug9"
  3451. thread dialog::thug_leave_now
  3452. waitForThread parm.previousthread
  3453.  
  3454. parm.mancini1 string "$mancini2"
  3455. thread dialog::mancini_call_chopper
  3456. waitForThread parm.previousthread
  3457.  
  3458. end // mancini_seen3_dialog_thread
  3459.  
  3460.  
  3461. // end_sequence_dialog_thread:
  3462. /////////////////////////////////////////////////////////////////////////////
  3463. end_sequence_dialog_thread:
  3464.  
  3465. thread dialog::end_of_level
  3466. waitForThread parm.previousthread
  3467.  
  3468. level.ExitDialogComplete = 1
  3469.  
  3470. end // end_sequence_dialog_thread
  3471.  
  3472.  
  3473. //===========================================================================
  3474. //===========================================================================
  3475. // CONSOLES
  3476. //===========================================================================
  3477. //===========================================================================
  3478. //---------------------------------------------------------------
  3479. // SecMenu_Thread
  3480. //---------------------------------------------------------------
  3481. SecMenu_Thread:
  3482. wait 3
  3483. local.sec_console string "con_security"
  3484. local.sec_consoleobject string "%con_security"
  3485. local.sec_consoleobject confraction .3
  3486. goto SecMenu_Main_Input
  3487.  
  3488. //---------------------------------------------------------------
  3489. SecMenu_Main_Input:
  3490. local.CustomerName string "--------"
  3491. local.CustomerNumber string "--------"
  3492. local.CustomerPIN string "--------"
  3493. local.sec_consoleobject conclear
  3494. local.sec_consoleobject confraction .3
  3495. local.sec_consoleobject conmenufile "menus/bank/bank.001"
  3496. local.PrintString string "xl 280 yt -350 fc 0.5 0.5 0.5 1 string \""
  3497. local.doors_locked ifequal 0 local.PrintString append "LOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3498. local.doors_locked ifequal 1 local.PrintString append "UNLOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3499. level.description ifequal 0 local.PrintString append "HIGH\""
  3500. level.description ifequal 1 local.PrintString append "LOW\""
  3501. local.sec_consoleobject conlayout local.PrintString
  3502. local.sec_consoleobject focus menu
  3503. waitForConsole local.sec_console
  3504. local.secinput coninput local.sec_console
  3505. goto SecMenu_Main_ProcessInput
  3506.  
  3507. SecMenu_Main_ProcessInput:
  3508. local.secinput ifequal 1 goto SecMenu_Doors_Input
  3509. local.secinput ifequal 2 goto SecMenu_Vault_Input
  3510. local.secinput ifequal 3 goto SecMenu_Account_Input
  3511. local.secinput ifequal 4 goto SecMenu_Prompt_Input
  3512. goto SecMenu_Main_Input
  3513.  
  3514. //---------------------------------------------------------------
  3515. SecMenu_Doors_Input:
  3516. local.sec_consoleobject conclear
  3517. local.doors_locked ifequal 0 local.sec_consoleobject conmenufile "menus/bank/bank.002"
  3518. local.doors_locked ifequal 1 local.sec_consoleobject conmenufile "menus/bank/bank.003"
  3519. local.PrintString string "xl 280 yt -350 fc 0.5 0.5 0.5 1 string \""
  3520. local.doors_locked ifequal 0 local.PrintString append "LOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3521. local.doors_locked ifequal 1 local.PrintString append "UNLOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3522. level.description ifequal 0 local.PrintString append "HIGH\""
  3523. level.description ifequal 1 local.PrintString append "LOW\""
  3524. local.sec_consoleobject conlayout local.PrintString
  3525. waitForConsole local.sec_console
  3526. local.secinput coninput local.sec_console
  3527. goto SecMenu_Doors_ProcessInput
  3528.  
  3529. SecMenu_Doors_ProcessInput:
  3530. local.secinput ifequal 2 goto SecMenu_Main_Input
  3531. local.doors_locked *= -1
  3532. local.doors_locked += 1
  3533.  
  3534. local.SecurityDoorsUnlockedOnce ifequal 0 thread security_doors_unlocked_misscomp_thread
  3535. local.SecurityDoorsUnlockedOnce = 1
  3536.  
  3537. local.doors_locked ifequal 1 $door_security unlock
  3538. local.doors_locked ifequal 0 $door_security lock
  3539. goto SecMenu_Doors_Input
  3540.  
  3541. //---------------------------------------------------------------
  3542. SecMenu_Vault_Input:
  3543. local.sec_consoleobject conclear
  3544. level.description ifequal 0 local.sec_consoleobject conmenufile "menus/bank/bank.004"
  3545. level.description ifequal 1 local.sec_consoleobject conmenufile "menus/bank/bank.005"
  3546. local.PrintString string "xl 280 yt -350 fc 0.5 0.5 0.5 1 string \""
  3547. local.doors_locked ifequal 0 local.PrintString append "LOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3548. local.doors_locked ifequal 1 local.PrintString append "UNLOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3549. level.description ifequal 0 local.PrintString append "HIGH\""
  3550. level.description ifequal 1 local.PrintString append "LOW\""
  3551. local.sec_consoleobject conlayout local.PrintString
  3552. waitForConsole local.sec_console
  3553. local.secinput coninput local.sec_console
  3554. goto SecMenu_Vault_ProcessInput
  3555.  
  3556. SecMenu_Vault_ProcessInput:
  3557. local.secinput ifequal 2 goto SecMenu_Vault_ViewPasscode
  3558. local.secinput ifequal 3 goto SecMenu_Main_Input
  3559. level.description *= -1
  3560. level.description += 1
  3561. level.description ifequal 0 $camgun1 activate
  3562. level.description ifequal 0 $camgun2 activate
  3563. level.description ifequal 1 $camgun1 deactivate
  3564. level.description ifequal 1 $camgun2 deactivate
  3565. goto SecMenu_Vault_Input
  3566.  
  3567. SecMenu_Vault_ViewPasscode:
  3568. local.sec_consoleobject conclear
  3569. local.sec_consoleobject conmenufile "menus/bank/bank.006"
  3570. local.PrintString string "xl 140 yt -210 fc 0.5 0.5 0.5 1 string \"                     "
  3571. local.PrintString appendint level.VaultCombo1
  3572. local.PrintString append "\" xl 140 yt -240 fc 0.5 0.5 0.5 1 string \"                     "
  3573. local.PrintString appendint level.VaultCombo2
  3574. local.PrintString append "\" xl 280 yt -350 fc 0.5 0.5 0.5 1 string \""
  3575. local.doors_locked ifequal 0 local.PrintString append "LOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3576. local.doors_locked ifequal 1 local.PrintString append "UNLOCKED\" xl 280 yt -400 fc 0.5 0.5 0.5 1 string \""
  3577. level.description ifequal 0 local.PrintString append "HIGH\""
  3578. level.description ifequal 1 local.PrintString append "LOW\""
  3579. local.sec_consoleobject conlayout local.PrintString
  3580. waitForConsole local.sec_console
  3581. local.secinput coninput local.sec_console
  3582. goto SecMenu_Vault_Input
  3583.  
  3584. //---------------------------------------------------------------
  3585. SecMenu_Account_Input:
  3586. local.sec_consoleobject conclear
  3587. local.sec_consoleobject conmenufile "menus/bank/bank.007"
  3588. local.PrintString string "xl 260 yt -230 fc 0.5 0.5 0.5 1 string \""
  3589. local.PrintString append local.CustomerName
  3590. local.PrintString append "\" xl 260 yt -260 fc 0.5 0.5 0.5 1 string \""
  3591. local.PrintString append local.CustomerNumber
  3592. local.PrintString append "\" xl 260 yt -290 fc 0.5 0.5 0.5 1 string \""
  3593. local.PrintString append local.CustomerPIN
  3594. local.PrintString append "\""
  3595. local.sec_consoleobject conlayout local.PrintString
  3596. local.sec_consoleobject focus console
  3597. waitForConsole local.sec_console
  3598. local.secinput coninput local.sec_console
  3599. goto SecMenu_Account_ProcessInput
  3600.  
  3601. SecMenu_Account_ProcessInput:
  3602. local.secinput ifstrequal "Blade" goto SecMenu_Account_Blade
  3603. local.secinput ifstrequal "blade" goto SecMenu_Account_Blade
  3604. local.secinput ifstrequal "BLADE" goto SecMenu_Account_Blade
  3605. local.secinput ifstrequal "Sinclaire" goto SecMenu_Account_Sinclaire
  3606. local.secinput ifstrequal "sinclaire" goto SecMenu_Account_Sinclaire
  3607. local.secinput ifstrequal "SINCLAIRE" goto SecMenu_Account_Sinclaire
  3608. local.secinput ifstrequal "Exit" goto SecMenu_Main_Input
  3609. local.secinput ifstrequal "exit" goto SecMenu_Main_Input
  3610. local.secinput ifstrequal "EXIT" goto SecMenu_Main_Input
  3611. local.CustomerName string "Invalid Handle"
  3612. local.CustomerNumber string "--------"
  3613. local.CustomerPIN string "--------"
  3614. goto SecMenu_Account_Input
  3615.  
  3616. SecMenu_Account_Blade:
  3617. local.CustomerName string "John R. Blade"
  3618. local.CustomerNumber string "010345"
  3619. local.CustomerPIN string "2019"
  3620. goto SecMenu_Account_Input
  3621.  
  3622. SecMenu_Account_Sinclaire:
  3623. local.CustomerName string "Elexis Sinclaire"
  3624. local.CustomerNumber string "010333"
  3625. local.CustomerPIN string "6969"
  3626. goto SecMenu_Account_Input
  3627.  
  3628. //---------------------------------------------------------------
  3629. SecMenu_Prompt_Input:
  3630. local.CurrentDir string "fcbsec"
  3631. local.sec_consoleobject conclear
  3632. local.sec_consoleobject conclearlayout
  3633. local.sec_consoleobject conmenufile "menus/bank/bank.008"
  3634. local.sec_consoleobject confraction .9
  3635. local.sec_consoleobject focus console
  3636. local.PrintString string "Ultralarge(R) Doorways 36(TM)\n"
  3637. local.PrintString append "(C) Copyright 2015-2037 Ultralarge Corp.\n\n"
  3638. goto SecMenu_Prompt_Input_Loop
  3639.  
  3640. SecMenu_Prompt_Input_Loop:
  3641. local.sec_consoleobject conprint local.PrintString
  3642. waitForConsole local.sec_console
  3643. local.secinput coninput local.sec_console
  3644. goto SecMenu_Prompt_ProcessInput
  3645.  
  3646. SecMenu_Prompt_ProcessInput:
  3647. local.secinput ifstrequal "dir" goto SecMenu_Prompt_Dir
  3648. local.secinput ifstrequal "cd .." goto SecMenu_Prompt_CDDotDot
  3649. local.secinput ifstrequal "cd.." goto SecMenu_Prompt_CDDotDot
  3650. local.secinput ifstrequal "cd fcbsec" goto SecMenu_Prompt_CDUpTo_fcbsec
  3651. local.secinput ifstrequal "cd data" goto SecMenu_Prompt_CDUpTo_fcbsec_data
  3652. local.secinput ifstrequal "cd doorways" goto SecMenu_Prompt_Denied
  3653. local.secinput ifstrequal "type fcbsec.ini" goto SecMenu_Prompt_Type_fcbsecini
  3654. local.secinput ifstrequal "type fcbsec01.pwd" goto SecMenu_Prompt_Type_fcbsec01pwd
  3655. local.secinput ifstrequal "type fcbsec02.pwd" goto SecMenu_Prompt_Type_fcbsec02pwd
  3656. local.secinput ifstrequal "type fcbsec03.pwd" goto SecMenu_Prompt_Type_fcbsec03pwd
  3657. local.secinput ifstrequal "type fcbsec04.pwd" goto SecMenu_Prompt_Type_fcbsec04pwd
  3658. local.secinput ifstrequal "type fcbsec.exe" goto SecMenu_Prompt_Type_fcbsecexe
  3659. local.secinput ifstrequal "type autoexec.bat" goto SecMenu_Prompt_Type_autoexec
  3660. local.secinput ifstrequal "type config.sys" goto SecMenu_Prompt_Type_config
  3661. local.secinput ifstrequal "autoexec" goto SecMenu_Main_Input
  3662. local.secinput ifstrequal "autoexec.bat" SecMenu_Main_Input
  3663. local.secinput ifstrequal "fcbsec" goto SecMenu_Main_Input
  3664. local.secinput ifstrequal "fcbsec.exe" goto SecMenu_Main_Input
  3665. local.secinput ifstrequal "cls" goto SecMenu_Prompt_Cls
  3666. local.secinput ifstrequal "" goto SecMenu_Prompt_Empty
  3667. local.secinput ifstrequal "date" goto SecMenu_Prompt_Date
  3668. local.secinput ifstrequal "help" goto SecMenu_Prompt_Help
  3669. local.secinput ifstrequal "exit" goto SecMenu_Main_Input
  3670. goto SecMenu_Prompt_Invalid
  3671.  
  3672. SecMenu_Prompt_Dir:
  3673. local.CurrentDir ifstrequal "fcbsec_data" goto SecMenu_Prompt_Dir_fcbsec_data
  3674. local.CurrentDir ifstrequal "fcbsec" goto SecMenu_Prompt_Dir_fcbsec
  3675. local.CurrentDir ifstrequal "root" goto SecMenu_Prompt_Dir_root
  3676.  
  3677. SecMenu_Prompt_Dir_fcbsec_data:
  3678. local.CurrentDir string "fcbsec_data"
  3679. local.PrintString string "C:\\>"
  3680. local.PrintString append local.secinput
  3681. local.PrintString append "\n\n"
  3682. local.PrintString append "Volume in drive C is FCBX040\n"
  3683. local.PrintString append "Directory of C:\\fcbsec\\data\n\n"
  3684. local.PrintString append ".            <DIR>         06-24-35 9:12a\n"
  3685. local.PrintString append "..           <DIR>         06-24-35 9:12a\n"
  3686. local.PrintString append "fcbsec01.pwd          110  01-01-37 4:45p\n"
  3687. local.PrintString append "fcbsec02.pwd          110  01-01-37 4:45p\n"
  3688. local.PrintString append "fcbsec03.pwd          110  01-01-37 4:45p\n"
  3689. local.PrintString append "fcbsec04.pwd           12  01-01-37 4:45p\n"
  3690. local.PrintString append "fcbsec.ini             97  01-01-37 4:45p\n\n"
  3691. goto SecMenu_Prompt_Input_Loop
  3692.  
  3693. SecMenu_Prompt_Dir_fcbsec:
  3694. local.CurrentDir string "fcbsec"
  3695. local.PrintString string "C:\\>"
  3696. local.PrintString append local.secinput
  3697. local.PrintString append "\n\n"
  3698. local.PrintString append "Volume in drive C is FCBX040\n"
  3699. local.PrintString append "Directory of C:\\fcbsec\n\n"
  3700. local.PrintString append ".            <DIR>         06-24-35 9:12a\n"
  3701. local.PrintString append "..           <DIR>         06-24-35 9:12a\n"
  3702. local.PrintString append "data         <DIR>         03-10-36 7:55p\n"
  3703. local.PrintString append "fcbsec.exe         21,710  03-10-36 7:57p\n\n"
  3704. goto SecMenu_Prompt_Input_Loop
  3705.  
  3706. SecMenu_Prompt_Dir_root:
  3707. local.CurrentDir string "root"
  3708. local.PrintString string "C:\\>"
  3709. local.PrintString append local.secinput
  3710. local.PrintString append "\n\n"
  3711. local.PrintString append "Volume in drive C is FCBX040\n"
  3712. local.PrintString append "Directory of C:\\n\n"
  3713. local.PrintString append "doorways     <DIR>         06-22-35 3:32a\n"
  3714. local.PrintString append "fcbsec       <DIR>         03-10-36 7:54p\n"
  3715. local.PrintString append "autoexec.bat          156  06-22-35 8:32p\n"
  3716. local.PrintString append "config.sys            145  06-22-35 8:33p\n\n"
  3717. goto SecMenu_Prompt_Input_Loop
  3718.  
  3719. SecMenu_Prompt_CDDotDot:
  3720. local.CurrentDir ifstrequal "fcbsec_data" goto SecMenu_Prompt_CDDownto_fcbsec
  3721. local.CurrentDir ifstrequal "fcbsec" goto SecMenu_Prompt_CDDownto_root
  3722. local.CurrentDir ifstrequal "root" goto SecMenu_Prompt_CDDownto_root
  3723.  
  3724. SecMenu_Prompt_CDUpTo_fcbsec_data:
  3725. local.CurrentDir ifstrnotequal "fcbsec" goto SecMenu_Prompt_Invalid
  3726. local.PrintString string "C:\\>"
  3727. local.PrintString append local.secinput
  3728. local.PrintString append "\n\n"
  3729. local.CurrentDir string "fcbsec_data"
  3730. goto SecMenu_Prompt_Input_Loop
  3731.  
  3732. SecMenu_Prompt_CDUpTo_fcbsec:
  3733. local.CurrentDir ifstrnotequal "root" goto SecMenu_Prompt_Invalid
  3734. local.PrintString string "C:\\>"
  3735. local.PrintString append local.secinput
  3736. local.PrintString append "\n\n"
  3737. local.CurrentDir string "fcbsec"
  3738. goto SecMenu_Prompt_Input_Loop
  3739.  
  3740. SecMenu_Prompt_CDDownto_fcbsec:
  3741. local.PrintString string "C:\\>"
  3742. local.PrintString append local.secinput
  3743. local.PrintString append "\n\n"
  3744. local.CurrentDir string "fcbsec"
  3745. goto SecMenu_Prompt_Input_Loop
  3746.  
  3747. SecMenu_Prompt_CDDownto_root:
  3748. local.PrintString string "C:\\>"
  3749. local.PrintString append local.secinput
  3750. local.PrintString append "\n\n"
  3751. local.CurrentDir string "root"
  3752. goto SecMenu_Prompt_Input_Loop
  3753.  
  3754. SecMenu_Prompt_Type_fcbsecexe:
  3755. local.PrintString string "C:\\>"
  3756. local.PrintString append local.secinput
  3757. local.PrintString append "\n"
  3758. local.PrintString append "mz fUfi%fu(    <&wRiEeDdEeIrW"
  3759. $warn_dialog_trigger playsound "environment/computer/beeps/cmpbp1.wav" 3
  3760. local.sec_consoleobject conprint local.PrintString
  3761. wait 0.5
  3762. local.PrintString string "iL!@ $$nNtX*%=\n"
  3763. local.PrintString append "frfuflfefs*u0=eN2eiv0       "
  3764. $warn_dialog_trigger playsound "environment/computer/beeps/reject1.wav" 3
  3765. local.sec_consoleobject conprint local.PrintString
  3766. wait 0.5
  3767. local.PrintString string "EISA&f;u\n"
  3768. local.PrintString append "viQif\n"
  3769. local.PrintString append "uZ<e-\\<u^<e-<$vi+Qi[f\n\n"
  3770. goto SecMenu_Prompt_Input_Loop
  3771.  
  3772. SecMenu_Prompt_Type_autoexec:
  3773. local.CurrentDir ifstrnotequal "root" goto SecMenu_Prompt_Invalid
  3774. local.PrintString string "C:\\>"
  3775. local.PrintString append local.secinput
  3776. local.PrintString append "\n"
  3777. local.PrintString append "@ECHO OFF\n"
  3778. local.PrintString append "C:\\DOORS36\\MSCDEX.EXE /D:ASPICD0\n"
  3779. local.PrintString append "PROMPT $G\n"
  3780. local.PrintString append "PATH C:\\DOORS36;C:\\FCBSEC;C:\\\n"
  3781. local.PrintString append "SET TEMP=C:\\DOORS36\n"
  3782. local.PrintString append "REM C:\\DOORS36\\MOUSE.EXE\n"
  3783. local.PrintString append "C:\\FCBSEC\\FCBSEC.EXE\n\n"
  3784. goto SecMenu_Prompt_Input_Loop
  3785.  
  3786. SecMenu_Prompt_Type_config:
  3787. local.CurrentDir ifstrnotequal "root" goto SecMenu_Prompt_Invalid
  3788. local.PrintString string "C:\\>"
  3789. local.PrintString append local.secinput
  3790. local.PrintString append "\n"
  3791. local.PrintString append "DEVICE=C:\\SCSI\\ASPI8DOORS.SYS /D\n"
  3792. local.PrintString append "DEVICE=C:\\SCSI\\ASPICD.SYS /D:ASPICD0\n"
  3793. local.PrintString append "DEVICE=C:\\DOORS36\\SETVER.EXE\n"
  3794. local.PrintString append "DEVICE=C:\\DOORS36\\HIMEM.SYS\n"
  3795. local.PrintString append "DOORS36=HIGH\n\n"
  3796. goto SecMenu_Prompt_Input_Loop
  3797.  
  3798. SecMenu_Prompt_Type_fcbsecini:
  3799. local.CurrentDir ifstrnotequal "fcbsec_data" goto SecMenu_Prompt_Invalid
  3800. local.PrintString string "C:\\>"
  3801. local.PrintString append local.secinput
  3802. local.PrintString append "\n"
  3803. local.PrintString append "BRANCH=FREEPORT\n"
  3804. local.PrintString append "WALLPAPER=C:\\DOORWAYS\\JLH-IS-HOT.BMP\n"
  3805. local.PrintString append "QTDVIDEO=0x0001\n"
  3806. local.PrintString append "MCIXSND=0x0001\n"
  3807. local.PrintString append "GDANIM=0x0001\n\n"
  3808. goto SecMenu_Prompt_Input_Loop
  3809.  
  3810. SecMenu_Prompt_Type_fcbsec01pwd:
  3811. local.CurrentDir ifstrnotequal "fcbsec_data" goto SecMenu_Prompt_Invalid
  3812. local.PrintString string "C:\\>"
  3813. local.PrintString append local.secinput
  3814. local.PrintString append "\n"
  3815. local.PrintString append "$303195@6666\n"
  3816. local.PrintString append "$845724@9157\n"
  3817. local.PrintString append "$010333@6969\n"
  3818. local.PrintString append "$060571@8303\n"
  3819. local.PrintString append "$601571@6672\n"
  3820. local.PrintString append "$010345@2019\n"
  3821. local.PrintString append "$002215@2635\n"
  3822. local.PrintString append "$873282@2635\n\n"
  3823. goto SecMenu_Prompt_Input_Loop
  3824.  
  3825. SecMenu_Prompt_Type_fcbsec02pwd:
  3826. local.CurrentDir ifstrnotequal "fcbsec_data" goto SecMenu_Prompt_Invalid
  3827. local.PrintString string "C:\\>"
  3828. local.PrintString append local.secinput
  3829. local.PrintString append "\n"
  3830. local.PrintString append "$112029@2029\n"
  3831. local.PrintString append "$042171@5811\n"
  3832. local.PrintString append "$101505@5769\n"
  3833. local.PrintString append "$??????@????\n"
  3834. local.PrintString append "$443344@4444\n"
  3835. local.PrintString append "$123456@1234\n"
  3836. local.PrintString append "$100372@3265\n"
  3837. local.PrintString append "$070677@5316\n\n"
  3838. goto SecMenu_Prompt_Input_Loop
  3839.  
  3840. SecMenu_Prompt_Type_fcbsec03pwd:
  3841. local.CurrentDir ifstrnotequal "fcbsec_data" goto SecMenu_Prompt_Invalid
  3842. local.PrintString string "C:\\>"
  3843. local.PrintString append local.secinput
  3844. local.PrintString append "\n"
  3845. local.PrintString append "$081296@0000\n"
  3846. local.PrintString append "$021977@5334\n"
  3847. local.PrintString append "$272727@2727\n"
  3848. local.PrintString append "$052881@6275\n"
  3849. local.PrintString append "$032079@2361\n"
  3850. local.PrintString append "$041384@2663\n"
  3851. local.PrintString append "$020298@5334\n"
  3852. local.PrintString append "$422907@8252\n\n"
  3853. goto SecMenu_Prompt_Input_Loop
  3854.  
  3855. SecMenu_Prompt_Type_fcbsec04pwd:
  3856. local.CurrentDir ifstrnotequal "fcbsec_data" goto SecMenu_Prompt_Invalid
  3857. local.PrintString string "C:\\>"
  3858. local.PrintString append local.secinput
  3859. local.PrintString append "\n"
  3860. local.PrintString append "$012671@2600\n"
  3861. local.PrintString append "$642753@9084\n"
  3862. local.PrintString append "$050480@1984\n\n"
  3863. goto SecMenu_Prompt_Input_Loop
  3864.  
  3865. SecMenu_Prompt_Help:
  3866. local.PrintString string "C:\\>"
  3867. local.PrintString append local.secinput
  3868. local.PrintString append "\n"
  3869. local.PrintString append "Available commands:\n\n"
  3870. local.PrintString append "cd   Change current directory.\n"
  3871. local.PrintString append "cls  Clears the screen.\n"
  3872. local.PrintString append "date Print the current date.\n"
  3873. local.PrintString append "dir  View the current directory contents\n"
  3874. local.PrintString append "type Displays the contents of a text file. \n"
  3875. local.PrintString append "exit Exit the command prompt.\n\n"
  3876. goto SecMenu_Prompt_Input_Loop
  3877.  
  3878. SecMenu_Prompt_Empty:
  3879. local.PrintString string "C:\\>\n"
  3880. goto SecMenu_Prompt_Input_Loop
  3881.  
  3882. SecMenu_Prompt_Cls:
  3883. local.PrintString string ""
  3884. local.sec_consoleobject conclear
  3885. goto SecMenu_Prompt_Input_Loop
  3886.  
  3887. SecMenu_Prompt_Date:
  3888. local.PrintString string "C:\\>"
  3889. local.PrintString append local.secinput
  3890. local.PrintString append "\n"
  3891. local.PrintString append "Current Date is: Thu 06/23/37\n\n"
  3892. goto SecMenu_Prompt_Input_Loop
  3893.  
  3894. SecMenu_Prompt_Denied:
  3895. local.PrintString string "C:\\>"
  3896. local.PrintString append local.secinput
  3897. local.PrintString append "\n"
  3898. local.PrintString append "Access Denied.\n\n"
  3899. goto SecMenu_Prompt_Input_Loop
  3900.  
  3901. SecMenu_Prompt_Invalid:
  3902. local.PrintString string "C:\\>"
  3903. local.PrintString append local.secinput
  3904. local.PrintString append "\n"
  3905. local.PrintString append "Bad command or file name\n\n"
  3906. goto SecMenu_Prompt_Input_Loop
  3907.  
  3908. end
  3909.  
  3910.  
  3911. //---------------------------------------------------------------
  3912. // ATM_Setup_Thread
  3913. //---------------------------------------------------------------
  3914. ATM_Setup_Thread:
  3915. game.bank_balance = 0
  3916.  
  3917. level.ElexisAccount string "010333"
  3918. level.ElexisPIN string "6969"
  3919. level.ElexisChecking string "$9,390,000.00"
  3920. level.ElexisSavings string "$100,040.00"
  3921.  
  3922. level.BladeAccount string "010345"
  3923. level.BladePIN string "2019"
  3924. level.BladeChecking string "$0.00"
  3925. level.BladeSavings string "$0.00"
  3926.  
  3927. parm.atm_console string "con_atm1"
  3928. thread ATM_Thread
  3929.  
  3930. game.intro_billboard_fall ifequal 3 trigger $atm_sparks
  3931. game.intro_billboard_fall ifequal 3 $con_atm2_use remove
  3932. game.intro_billboard_fall ifequal 3 goto con_atm_bottom
  3933.  
  3934. parm.atm_console string "con_atm2"
  3935. thread ATM_Thread
  3936.  
  3937. con_atm_bottom:
  3938.  
  3939. end
  3940.  
  3941. //-----------------
  3942. ----------------------------------------------------------
  3943. ATM_Thread:
  3944.  
  3945. local.Egg1Account string "303195"
  3946. local.Egg1PIN string "6666"
  3947. local.Egg1Checking string "$-10,000,000.00"
  3948. local.Egg1Savings string "$0.00"
  3949.  
  3950. local.Egg2Account string "845724"
  3951. local.Egg2PIN string "9157"
  3952. local.Egg2Checking string "$357.01"
  3953. local.Egg2Savings string "$5,000.99"
  3954.  
  3955. local.Egg3Account string "060571"
  3956. local.Egg3PIN string "8303"
  3957. local.Egg3Checking string "$403.71"
  3958. local.Egg3Savings string "$1.99"
  3959.  
  3960. local.Egg4Account string "601571"
  3961. local.Egg4PIN string "6672"
  3962. local.Egg4Checking string "$2,753.65"
  3963. local.Egg4Savings string "$2,500.00"
  3964.  
  3965. local.Egg5Account string "002215"
  3966. local.Egg5PIN string "2635"
  3967. local.Egg5Checking string "$256.03"
  3968. local.Egg5Savings string "$109.19"
  3969.  
  3970. local.Egg6Account string "873282"
  3971. local.Egg6PIN string "2635"
  3972. local.Egg6Checking string "$20,000.70"
  3973. local.Egg6Savings string "$2,500.00"
  3974.  
  3975. local.Egg7Account string "112029"
  3976. local.Egg7PIN string "2029"
  3977. local.Egg7Checking string "$42,276.00"
  3978. local.Egg7Savings string "$22.00"
  3979.  
  3980. local.Egg8Account string "042171"
  3981. local.Egg8PIN string "5811"
  3982. local.Egg8Checking string "$-32,000.00"
  3983. local.Egg8Savings string "Yeah, Right!!"
  3984.  
  3985. local.Egg9Account string "101505"
  3986. local.Egg9PIN string "5769"
  3987. local.Egg9Checking string "$14,022.00"
  3988. local.Egg9Savings string "$65,536.00"
  3989.  
  3990. local.Egg10Account string "??????"
  3991. local.Egg10PIN string "????"
  3992. local.Egg10Checking string "$???,???.??"
  3993. local.Egg10Savings string "$???,???.??"
  3994.  
  3995. local.Egg11Account string "443344"
  3996. local.Egg11PIN string "4444"
  3997. local.Egg11Checking string "$5.45"
  3998. local.Egg11Savings string "$0.00"
  3999.  
  4000. local.Egg12Account string "123456"
  4001. local.Egg12PIN string "1234"
  4002. local.Egg12Checking string "$1,234,567.89"
  4003. local.Egg12Savings string "$9,876,543.21"
  4004.  
  4005. local.Egg13Account string "100372"
  4006. local.Egg13PIN string "3265"
  4007. local.Egg13Checking string "$0.00"
  4008. local.Egg13Savings string "$0.00"
  4009.  
  4010. local.Egg14Account string "070677"
  4011. local.Egg14PIN string "5316"
  4012. local.Egg14Checking string "$16,000,000.00"
  4013. local.Egg14Savings string "$17,500,000.00"
  4014.  
  4015. local.Egg15Account string "422907"
  4016. local.Egg15PIN string "8252"
  4017. local.Egg15Checking string "$69,907.00"
  4018. local.Egg15Savings string "$8.00"
  4019.  
  4020. local.Egg16Account string "272727"
  4021. local.Egg16PIN string "2727"
  4022. local.Egg16Checking string "$27,000.00"
  4023. local.Egg16Savings string "$27,000.00"
  4024.  
  4025. local.Egg17Account string "052881"
  4026. local.Egg17PIN string "6275"
  4027. local.Egg17Checking string "$2,954.00"
  4028. local.Egg17Savings string "$14,326.00"
  4029.  
  4030. local.Egg18Account string "032079"
  4031. local.Egg18PIN string "2361"
  4032. local.Egg18Checking string "$-9,000.00"
  4033. local.Egg18Savings string "$0.00"
  4034.  
  4035. local.Egg19Account string "041384"
  4036. local.Egg19PIN string "2663"
  4037. local.Egg19Checking string "$0.00"
  4038. local.Egg19Savings string "$20,000.00"
  4039.  
  4040. local.Egg20Account string "020298"
  4041. local.Egg20PIN string "5334"
  4042. local.Egg20Checking string "$2,090.21"
  4043. local.Egg20Savings string "$0.00"
  4044.  
  4045. local.Egg21Account string "021977"
  4046. local.Egg21PIN string "5334"
  4047. local.Egg21Checking string "$2,090.21"
  4048. local.Egg21Savings string "$0.00"
  4049.  
  4050. local.Egg22Account string "081296"
  4051. local.Egg22PIN string "0000"
  4052. local.Egg22Checking string "$250,000.00"
  4053. local.Egg22Savings string "$0.00"
  4054.  
  4055. local.Egg23Account string "050480"
  4056. local.Egg23PIN string "1984"
  4057. local.Egg23Checking string "$66,082.00"
  4058. local.Egg23Savings string "$28,064.00"
  4059.  
  4060. local.Egg24Account string "642753"
  4061. local.Egg24PIN string "9084"
  4062. local.Egg24Checking string "$65,302.00"
  4063. local.Egg24Savings string "$29,053.00"
  4064.  
  4065. local.Egg25Account string "012671"
  4066. local.Egg25PIN string "2600"
  4067. local.Egg25Checking string "Not Enough!"
  4068. local.Egg25Savings string "Too Much!"
  4069.  
  4070. local.atm_console string parm.atm_console
  4071. local.atm_consoleobject string "%"
  4072. local.atm_consoleobject append local.atm_console
  4073. local.atm_consoleobject confraction .3
  4074. local.MainScreenInvalid = 0
  4075. goto ATM_Main_Input
  4076.  
  4077. ATM_Main_Input:
  4078. local.atm_consoleobject conclear
  4079. local.atm_consoleobject conclearlayout
  4080. local.MainScreenInvalid ifequal 0 local.atm_consoleobject conmenufile "menus/bank/bank.009"
  4081. local.MainScreenInvalid ifequal 1 local.atm_consoleobject conmenufile "menus/bank/bank.010"
  4082. local.atm_consoleobject focus console
  4083. waitForConsole local.atm_console
  4084. local.atminput coninput local.atm_console
  4085. goto ATM_Main_ProcessInput
  4086.  
  4087. ATM_Main_ProcessInput:
  4088. local.Account string local.atminput
  4089. local.atminput ifstrequal level.ElexisAccount goto ATM_Pin_Input
  4090. local.atminput ifstrequal level.BladeAccount goto ATM_Pin_Input
  4091. local.atminput ifstrequal local.Egg1Account goto ATM_Pin_Input
  4092. local.atminput ifstrequal local.Egg2Account goto ATM_Pin_Input
  4093. local.atminput ifstrequal local.Egg3Account goto ATM_Pin_Input
  4094. local.atminput ifstrequal local.Egg4Account goto ATM_Pin_Input
  4095. local.atminput ifstrequal local.Egg5Account goto ATM_Pin_Input
  4096. local.atminput ifstrequal local.Egg6Account goto ATM_Pin_Input
  4097. local.atminput ifstrequal local.Egg7Account goto ATM_Pin_Input
  4098. local.atminput ifstrequal local.Egg8Account goto ATM_Pin_Input
  4099. local.atminput ifstrequal local.Egg9Account goto ATM_Pin_Input
  4100. local.atminput ifstrequal local.Egg10Account goto ATM_Pin_Input
  4101. local.atminput ifstrequal local.Egg11Account goto ATM_Pin_Input
  4102. local.atminput ifstrequal local.Egg12Account goto ATM_Pin_Input
  4103. local.atminput ifstrequal local.Egg13Account goto ATM_Pin_Input
  4104. local.atminput ifstrequal local.Egg14Account goto ATM_Pin_Input
  4105. local.atminput ifstrequal local.Egg15Account goto ATM_Pin_Input
  4106. local.atminput ifstrequal local.Egg16Account goto ATM_Pin_Input
  4107. local.atminput ifstrequal local.Egg17Account goto ATM_Pin_Input
  4108. local.atminput ifstrequal local.Egg18Account goto ATM_Pin_Input
  4109. local.atminput ifstrequal local.Egg19Account goto ATM_Pin_Input
  4110. local.atminput ifstrequal local.Egg20Account goto ATM_Pin_Input
  4111. local.atminput ifstrequal local.Egg21Account goto ATM_Pin_Input
  4112. local.atminput ifstrequal local.Egg22Account goto ATM_Pin_Input
  4113. local.atminput ifstrequal local.Egg23Account goto ATM_Pin_Input
  4114. local.atminput ifstrequal local.Egg24Account goto ATM_Pin_Input
  4115. local.atminput ifstrequal local.Egg25Account goto ATM_Pin_Input
  4116. local.MainScreenInvalid = 1
  4117. goto ATM_Main_Input
  4118.  
  4119. ATM_Pin_Input:
  4120. local.MainScreenInvalid = 0
  4121. local.Account ifstrequal level.ElexisAccount local.atm_consoleobject conmenufile "menus/bank/bankac01.001"
  4122. local.Account ifstrequal level.BladeAccount local.atm_consoleobject conmenufile "menus/bank/bankac02.001"
  4123. local.Account ifstrequal local.Egg1Account local.atm_consoleobject conmenufile "menus/bank/bankac03.001"
  4124. local.Account ifstrequal local.Egg2Account local.atm_consoleobject conmenufile "menus/bank/bankac04.001"
  4125. local.Account ifstrequal local.Egg3Account local.atm_consoleobject conmenufile "menus/bank/bankac05.001"
  4126. local.Account ifstrequal local.Egg4Account local.atm_consoleobject conmenufile "menus/bank/bankac06.001"
  4127. local.Account ifstrequal local.Egg5Account local.atm_consoleobject conmenufile "menus/bank/bankac07.001"
  4128. local.Account ifstrequal local.Egg6Account local.atm_consoleobject conmenufile "menus/bank/bankac08.001"
  4129. local.Account ifstrequal local.Egg7Account local.atm_consoleobject conmenufile "menus/bank/bankac09.001"
  4130. local.Account ifstrequal local.Egg8Account local.atm_consoleobject conmenufile "menus/bank/bankac10.001"
  4131. local.Account ifstrequal local.Egg9Account local.atm_consoleobject conmenufile "menus/bank/bankac11.001"
  4132. local.Account ifstrequal local.Egg10Account local.atm_consoleobject conmenufile "menus/bank/bankac12.001"
  4133. local.Account ifstrequal local.Egg11Account local.atm_consoleobject conmenufile "menus/bank/bankac13.001"
  4134. local.Account ifstrequal local.Egg12Account local.atm_consoleobject conmenufile "menus/bank/bankac14.001"
  4135. local.Account ifstrequal local.Egg13Account local.atm_consoleobject conmenufile "menus/bank/bankac15.001"
  4136. local.Account ifstrequal local.Egg14Account local.atm_consoleobject conmenufile "menus/bank/bankac16.001"
  4137. local.Account ifstrequal local.Egg15Account local.atm_consoleobject conmenufile "menus/bank/bankac17.001"
  4138. local.Account ifstrequal local.Egg16Account local.atm_consoleobject conmenufile "menus/bank/bankac18.001"
  4139. local.Account ifstrequal local.Egg17Account local.atm_consoleobject conmenufile "menus/bank/bankac19.001"
  4140. local.Account ifstrequal local.Egg18Account local.atm_consoleobject conmenufile "menus/bank/bankac20.001"
  4141. local.Account ifstrequal local.Egg19Account local.atm_consoleobject conmenufile "menus/bank/bankac21.001"
  4142. local.Account ifstrequal local.Egg20Account local.atm_consoleobject conmenufile "menus/bank/bankac22.001"
  4143. local.Account ifstrequal local.Egg21Account local.atm_consoleobject conmenufile "menus/bank/bankac23.001"
  4144. local.Account ifstrequal local.Egg22Account local.atm_consoleobject conmenufile "menus/bank/bankac24.001"
  4145. local.Account ifstrequal local.Egg23Account local.atm_consoleobject conmenufile "menus/bank/bankac25.001"
  4146. local.Account ifstrequal local.Egg24Account local.atm_consoleobject conmenufile "menus/bank/bankac26.001"
  4147. local.Account ifstrequal local.Egg25Account local.atm_consoleobject conmenufile "menus/bank/bankac27.001"
  4148. waitForConsole local.atm_console
  4149. local.atminput coninput local.atm_console
  4150. goto ATM_Pin_ProcessInput
  4151.  
  4152. ATM_Pin_ProcessInput:
  4153. local.Account ifstrequal level.ElexisAccount goto ATM_PIN_Elexis
  4154. local.Account ifstrequal level.BladeAccount goto ATM_PIN_Blade
  4155. goto ATM_PIN_Eggs
  4156.  
  4157. ATM_PIN_Elexis:
  4158. local.atminput ifstrequal level.ElexisPIN goto ATM_PIN_Elexis_Valid
  4159. local.atm_consoleobject focus menu
  4160. local.atm_consoleobject conmenufile "menus/bank/bank.011"
  4161. waitForConsole local.atm_console
  4162. local.atminput coninput local.atm_console
  4163. goto ATM_Main_Input
  4164.  
  4165. ATM_PIN_Elexis_Valid:
  4166. local.DisplayAccount string level.ElexisAccount
  4167. local.DisplayChecking string level.ElexisChecking
  4168. local.DisplaySavings string level.ElexisSavings
  4169. goto ATM_Account_Input
  4170.  
  4171. ATM_PIN_Blade:
  4172. local.atminput ifstrequal level.BladePIN goto ATM_PIN_Blade_Valid
  4173. local.atm_consoleobject focus menu
  4174. local.atm_consoleobject conmenufile "menus/bank/bank.011"
  4175. waitForConsole local.atm_console
  4176. local.atminput coninput local.atm_console
  4177. goto ATM_Main_Input
  4178.  
  4179. ATM_PIN_Blade_Valid:
  4180. local.DisplayAccount string level.BladeAccount
  4181. local.DisplayChecking string level.BladeChecking
  4182. local.DisplaySavings string level.BladeSavings
  4183. goto ATM_Account_Input
  4184.  
  4185. ATM_PIN_Eggs:
  4186. local.Account ifstrequal local.Egg1Account local.PIN string local.Egg1PIN
  4187. local.Account ifstrequal local.Egg2Account local.PIN string local.Egg2PIN
  4188. local.Account ifstrequal local.Egg3Account local.PIN string local.Egg3PIN
  4189. local.Account ifstrequal local.Egg4Account local.PIN string local.Egg4PIN
  4190. local.Account ifstrequal local.Egg5Account local.PIN string local.Egg5PIN
  4191. local.Account ifstrequal local.Egg6Account local.PIN string local.Egg6PIN
  4192. local.Account ifstrequal local.Egg7Account local.PIN string local.Egg7PIN
  4193. local.Account ifstrequal local.Egg8Account local.PIN string local.Egg8PIN
  4194. local.Account ifstrequal local.Egg9Account local.PIN string local.Egg9PIN
  4195. local.Account ifstrequal local.Egg10Account local.PIN string local.Egg10PIN
  4196. local.Account ifstrequal local.Egg11Account local.PIN string local.Egg11PIN
  4197. local.Account ifstrequal local.Egg12Account local.PIN string local.Egg12PIN
  4198. local.Account ifstrequal local.Egg13Account local.PIN string local.Egg13PIN
  4199. local.Account ifstrequal local.Egg14Account local.PIN string local.Egg14PIN
  4200. local.Account ifstrequal local.Egg15Account local.PIN string local.Egg15PIN
  4201. local.Account ifstrequal local.Egg16Account local.PIN string local.Egg16PIN
  4202. local.Account ifstrequal local.Egg17Account local.PIN string local.Egg17PIN
  4203. local.Account ifstrequal local.Egg18Account local.PIN string local.Egg18PIN
  4204. local.Account ifstrequal local.Egg19Account local.PIN string local.Egg19PIN
  4205. local.Account ifstrequal local.Egg20Account local.PIN string local.Egg20PIN
  4206. local.Account ifstrequal local.Egg21Account local.PIN string local.Egg21PIN
  4207. local.Account ifstrequal local.Egg22Account local.PIN string local.Egg22PIN
  4208. local.Account ifstrequal local.Egg23Account local.PIN string local.Egg23PIN
  4209. local.Account ifstrequal local.Egg24Account local.PIN string local.Egg24PIN
  4210. local.Account ifstrequal local.Egg25Account local.PIN string local.Egg25PIN
  4211. local.atminput ifstrequal local.PIN goto ATM_PIN_Eggs_Valid
  4212. local.atm_consoleobject focus menu
  4213. local.atm_consoleobject conmenufile "menus/bank/bank.011"
  4214. waitForConsole local.atm_console
  4215. local.atminput coninput local.atm_console
  4216. goto ATM_Main_Input
  4217.  
  4218. ATM_PIN_Eggs_Valid:
  4219. local.DisplayAccount string local.Account
  4220. local.Account ifstrequal local.Egg1Account local.DisplayChecking string local.Egg1Checking
  4221. local.Account ifstrequal local.Egg1Account local.DisplaySavings string local.Egg1Savings
  4222. local.Account ifstrequal local.Egg2Account local.DisplayChecking string local.Egg2Checking
  4223. local.Account ifstrequal local.Egg2Account local.DisplaySavings string local.Egg2Savings
  4224. local.Account ifstrequal local.Egg3Account local.DisplayChecking string local.Egg3Checking
  4225. local.Account ifstrequal local.Egg3Account local.DisplaySavings string local.Egg3Savings
  4226. local.Account ifstrequal local.Egg4Account local.DisplayChecking string local.Egg4Checking
  4227. local.Account ifstrequal local.Egg4Account local.DisplaySavings string local.Egg4Savings
  4228. local.Account ifstrequal local.Egg5Account local.DisplayChecking string local.Egg5Checking
  4229. local.Account ifstrequal local.Egg5Account local.DisplaySavings string local.Egg5Savings
  4230. local.Account ifstrequal local.Egg6Account local.DisplayChecking string local.Egg6Checking
  4231. local.Account ifstrequal local.Egg6Account local.DisplaySavings string local.Egg6Savings
  4232. local.Account ifstrequal local.Egg7Account local.DisplayChecking string local.Egg7Checking
  4233. local.Account ifstrequal local.Egg7Account local.DisplaySavings string local.Egg7Savings
  4234. local.Account ifstrequal local.Egg8Account local.DisplayChecking string local.Egg8Checking
  4235. local.Account ifstrequal local.Egg8Account local.DisplaySavings string local.Egg8Savings
  4236. local.Account ifstrequal local.Egg9Account local.DisplayChecking string local.Egg9Checking
  4237. local.Account ifstrequal local.Egg9Account local.DisplaySavings string local.Egg9Savings
  4238. local.Account ifstrequal local.Egg10Account local.DisplayChecking string local.Egg10Checking
  4239. local.Account ifstrequal local.Egg10Account local.DisplaySavings string local.Egg10Savings
  4240. local.Account ifstrequal local.Egg11Account local.DisplayChecking string local.Egg11Checking
  4241. local.Account ifstrequal local.Egg11Account local.DisplaySavings string local.Egg11Savings
  4242. local.Account ifstrequal local.Egg12Account local.DisplayChecking string local.Egg12Checking
  4243. local.Account ifstrequal local.Egg12Account local.DisplaySavings string local.Egg12Savings
  4244. local.Account ifstrequal local.Egg13Account local.DisplayChecking string local.Egg13Checking
  4245. local.Account ifstrequal local.Egg13Account local.DisplaySavings string local.Egg13Savings
  4246. local.Account ifstrequal local.Egg14Account local.DisplayChecking string local.Egg14Checking
  4247. local.Account ifstrequal local.Egg14Account local.DisplaySavings string local.Egg14Savings
  4248. local.Account ifstrequal local.Egg15Account local.DisplayChecking string local.Egg15Checking
  4249. local.Account ifstrequal local.Egg15Account local.DisplaySavings string local.Egg15Savings
  4250. local.Account ifstrequal local.Egg16Account local.DisplayChecking string local.Egg16Checking
  4251. local.Account ifstrequal local.Egg16Account local.DisplaySavings string local.Egg16Savings
  4252. local.Account ifstrequal local.Egg17Account local.DisplayChecking string local.Egg17Checking
  4253. local.Account ifstrequal local.Egg17Account local.DisplaySavings string local.Egg17Savings
  4254. local.Account ifstrequal local.Egg18Account local.DisplayChecking string local.Egg18Checking
  4255. local.Account ifstrequal local.Egg18Account local.DisplaySavings string local.Egg18Savings
  4256. local.Account ifstrequal local.Egg19Account local.DisplayChecking string local.Egg19Checking
  4257. local.Account ifstrequal local.Egg19Account local.DisplaySavings string local.Egg19Savings
  4258. local.Account ifstrequal local.Egg20Account local.DisplayChecking string local.Egg20Checking
  4259. local.Account ifstrequal local.Egg20Account local.DisplaySavings string local.Egg20Savings
  4260. local.Account ifstrequal local.Egg21Account local.DisplayChecking string local.Egg21Checking
  4261. local.Account ifstrequal local.Egg21Account local.DisplaySavings string local.Egg21Savings
  4262. local.Account ifstrequal local.Egg22Account local.DisplayChecking string local.Egg22Checking
  4263. local.Account ifstrequal local.Egg22Account local.DisplaySavings string local.Egg22Savings
  4264. local.Account ifstrequal local.Egg23Account local.DisplayChecking string local.Egg23Checking
  4265. local.Account ifstrequal local.Egg23Account local.DisplaySavings string local.Egg23Savings
  4266. local.Account ifstrequal local.Egg24Account local.DisplayChecking string local.Egg24Checking
  4267. local.Account ifstrequal local.Egg24Account local.DisplaySavings string local.Egg24Savings
  4268. local.Account ifstrequal local.Egg25Account local.DisplayChecking string local.Egg25Checking
  4269. local.Account ifstrequal local.Egg25Account local.DisplaySavings string local.Egg25Savings
  4270. goto ATM_Account_Input
  4271.  
  4272. ATM_Account_Input:
  4273. local.DisplayAccount ifstrequal level.ElexisAccount local.atm_consoleobject conmenufile "menus/bank/bankac01.002"
  4274. local.DisplayAccount ifstrequal level.BladeAccount local.atm_consoleobject conmenufile "menus/bank/bankac02.002"
  4275. local.DisplayAccount ifstrequal local.Egg1Account local.atm_consoleobject conmenufile "menus/bank/bankac03.002"
  4276. local.DisplayAccount ifstrequal local.Egg2Account local.atm_consoleobject conmenufile "menus/bank/bankac04.002"
  4277. local.DisplayAccount ifstrequal local.Egg3Account local.atm_consoleobject conmenufile "menus/bank/bankac05.002"
  4278. local.DisplayAccount ifstrequal local.Egg4Account local.atm_consoleobject conmenufile "menus/bank/bankac06.002"
  4279. local.DisplayAccount ifstrequal local.Egg5Account local.atm_consoleobject conmenufile "menus/bank/bankac07.002"
  4280. local.DisplayAccount ifstrequal local.Egg6Account local.atm_consoleobject conmenufile "menus/bank/bankac08.002"
  4281. local.DisplayAccount ifstrequal local.Egg7Account local.atm_consoleobject conmenufile "menus/bank/bankac09.002"
  4282. local.DisplayAccount ifstrequal local.Egg8Account local.atm_consoleobject conmenufile "menus/bank/bankac10.002"
  4283. local.DisplayAccount ifstrequal local.Egg9Account local.atm_consoleobject conmenufile "menus/bank/bankac11.002"
  4284. local.DisplayAccount ifstrequal local.Egg10Account local.atm_consoleobject conmenufile "menus/bank/bankac12.002"
  4285. local.DisplayAccount ifstrequal local.Egg11Account local.atm_consoleobject conmenufile "menus/bank/bankac13.002"
  4286. local.DisplayAccount ifstrequal local.Egg12Account local.atm_consoleobject conmenufile "menus/bank/bankac14.002"
  4287. local.DisplayAccount ifstrequal local.Egg13Account local.atm_consoleobject conmenufile "menus/bank/bankac15.002"
  4288. local.DisplayAccount ifstrequal local.Egg14Account local.atm_consoleobject conmenufile "menus/bank/bankac16.002"
  4289. local.DisplayAccount ifstrequal local.Egg15Account local.atm_consoleobject conmenufile "menus/bank/bankac17.002"
  4290. local.DisplayAccount ifstrequal local.Egg16Account local.atm_consoleobject conmenufile "menus/bank/bankac18.002"
  4291. local.DisplayAccount ifstrequal local.Egg17Account local.atm_consoleobject conmenufile "menus/bank/bankac19.002"
  4292. local.DisplayAccount ifstrequal local.Egg18Account local.atm_consoleobject conmenufile "menus/bank/bankac20.002"
  4293. local.DisplayAccount ifstrequal local.Egg19Account local.atm_consoleobject conmenufile "menus/bank/bankac21.002"
  4294. local.DisplayAccount ifstrequal local.Egg20Account local.atm_consoleobject conmenufile "menus/bank/bankac22.002"
  4295. local.DisplayAccount ifstrequal local.Egg21Account local.atm_consoleobject conmenufile "menus/bank/bankac23.002"
  4296. local.DisplayAccount ifstrequal local.Egg22Account local.atm_consoleobject conmenufile "menus/bank/bankac24.002"
  4297. local.DisplayAccount ifstrequal local.Egg23Account local.atm_consoleobject conmenufile "menus/bank/bankac25.002"
  4298. local.DisplayAccount ifstrequal local.Egg24Account local.atm_consoleobject conmenufile "menus/bank/bankac26.002"
  4299. local.DisplayAccount ifstrequal local.Egg25Account local.atm_consoleobject conmenufile "menus/bank/bankac27.002"
  4300. local.PrintString string "jr 20 yt -120 fc 0.5 0.5 0.5 1 string \""
  4301. local.PrintString append local.DisplayChecking
  4302. local.PrintString append "\" jr 20 yt -180 fc 0.5 0.5 0.5 1 string \""
  4303. local.PrintString append local.DisplaySavings
  4304. local.PrintString append "\""
  4305. local.atm_consoleobject conlayout local.PrintString
  4306.  
  4307. local.atm_consoleobject focus menu
  4308. waitForConsole local.atm_console
  4309. local.atminput coninput local.atm_console
  4310. goto ATM_Account_ProcessInput
  4311.  
  4312. ATM_Account_ProcessInput:
  4313. local.atminput ifequal 1 goto ATM_Account_Withdrawl
  4314. local.atminput ifequal 2 goto ATM_Account_Deposit
  4315. local.atminput ifequal 3 goto ATM_Account_WireFunds
  4316. local.atminput ifequal 4 goto ATM_Main_Input
  4317.  
  4318. ATM_Account_Withdrawl:
  4319. local.atm_consoleobject conprint " Withdrawls Temporarily Unavailable.\n"
  4320. goto ATM_Account_Input
  4321.  
  4322. ATM_Account_Deposit:
  4323. local.atm_consoleobject conprint " Deposits Temporarily Unavailable.\n"
  4324. goto ATM_Account_Input
  4325.  
  4326. ATM_Account_WireFunds:
  4327. local.DisplayAccount ifstrequal level.ElexisAccount goto ATM_Account_WireFunds_FromElexis
  4328. local.DisplayAccount ifstrequal level.BladeAccount goto ATM_Account_WireFunds_FromBlade
  4329. local.atm_consoleobject conprint " Access Denied On This Account.\n"
  4330. goto ATM_Account_Input
  4331.  
  4332. ATM_Account_WireFunds_FromElexis:
  4333. game.bank_balance ifequal 1 goto ATM_Account_WireFunds_FromElexis_OnHold
  4334. local.atm_consoleobject conprint " Enter Destination Account Number\n"
  4335. local.atm_consoleobject focus console
  4336. waitForConsole local.atm_console
  4337. local.atminput coninput local.atm_console
  4338. local.atminput ifstrequal level.BladeAccount goto ATM_Account_WireFunds_FromElexis_ValidAccount
  4339. local.atminput ifstrequal level.ElexisAccount goto ATM_Account_WireFunds_Denied
  4340. // Put stuff for extra accounts
  4341. local.atm_consoleobject conprint " Invalid Account Number\n"
  4342. goto ATM_Account_Input
  4343.  
  4344. ATM_Account_WireFunds_FromElexis_ValidAccount:
  4345. game.bank_balance ifequal 0 goto ATM_Account_WireFunds_FromElexis_Sufficient
  4346. goto ATM_Account_WireFunds_FromElexis_OnHold
  4347.  
  4348. ATM_Account_WireFunds_FromElexis_OnHold:
  4349. local.atm_consoleobject conprint " Funds On Hold For 48 Hours.\n"
  4350. local.DisplayChecking string level.ElexisChecking
  4351. local.DisplaySavings string level.ElexisSavings
  4352. local.PrintString string "jr 20 yt -120 fc 0.5 0.5 0.5 1 string \""
  4353. local.PrintString append local.DisplayChecking
  4354. local.PrintString append "\" jr 20 yt -180 fc 0.5 0.5 0.5 1 string \""
  4355. local.PrintString append local.DisplaySavings
  4356. local.PrintString append "\""
  4357. goto ATM_Account_Input
  4358.  
  4359. ATM_Account_WireFunds_FromElexis_Sufficient:
  4360. game.bank_balance = 1
  4361. local.DisplayChecking string "$0.00"
  4362. local.DisplaySavings string "$0.00"
  4363. level.ElexisChecking string "$0.00"
  4364. level.ElexisSavings string "$0.00"
  4365. level.BladeChecking string "$9,390,000.00"
  4366. level.BladeSavings string "$100,040.00"
  4367. local.atm_consoleobject conprint " $9,490,041.00 Wired To John R. Blade\n"
  4368. goto ATM_Account_Input
  4369.  
  4370. ATM_Account_WireFunds_FromBlade:
  4371. game.bank_balance ifequal 0 goto ATM_Account_WireFunds_FromBlade_Insufficient
  4372. game.bank_balance ifequal 1 goto ATM_Account_WireFunds_FromBlade_OnHold
  4373.  
  4374. ATM_Account_WireFunds_FromBlade_OnHold:
  4375. local.atm_consoleobject conprint " Funds On Hold For 48 Hours.\n"
  4376. local.DisplayChecking string level.BladeChecking
  4377. local.DisplaySavings string level.BladeSavings
  4378. local.PrintString string "jr 20 yt -120 fc 0.5 0.5 0.5 1 string \""
  4379. local.PrintString append local.DisplayChecking
  4380. local.PrintString append "\" jr 20 yt -180 fc 0.5 0.5 0.5 1 string \""
  4381. local.PrintString append local.DisplaySavings
  4382. local.PrintString append "\""
  4383. goto ATM_Account_Input
  4384.  
  4385. ATM_Account_WireFunds_FromBlade_Insufficient:
  4386. local.atm_consoleobject conprint " Insufficient Funds.\n"
  4387. goto ATM_Account_Input
  4388.  
  4389. ATM_Account_WireFunds_Denied:
  4390. local.atm_consoleobject conprint " Action Denied On Account #"
  4391. local.atm_consoleobject conprint local.atminput
  4392. local.atm_consoleobject conprint "\n"
  4393. goto ATM_Account_Input
  4394.  
  4395. end
  4396.  
  4397.  
  4398. //===========================================================================
  4399. //===========================================================================
  4400. // MISSION COMPUTER
  4401. //===========================================================================
  4402. //===========================================================================
  4403. // bank_start_misscomp_thread:
  4404. /////////////////////////////////////////////////////////////////////////////
  4405. bank_start_misscomp_thread:
  4406.  
  4407. thread BankMissionComputer
  4408. thread global/universal_script.scr::StatusUpdated
  4409. waitForThread parm.previousthread
  4410.  
  4411. end // bank_start_misscomp_thread
  4412.  
  4413. // capture_mancini_misscomp_thread:
  4414. /////////////////////////////////////////////////////////////////////////////
  4415. capture_mancini_misscomp_thread:
  4416.  
  4417. level.PObjective5 = 0 // Capture Mancini
  4418.  
  4419. thread BankMissionComputer
  4420. thread global/universal_script.scr::StatusUpdated
  4421. waitForThread parm.previousthread
  4422.  
  4423. end // capture_mancini_misscomp_thread
  4424.  
  4425.  
  4426. // security_key_misscomp_thread:
  4427. /////////////////////////////////////////////////////////////////////////////
  4428. security_key_misscomp_thread:
  4429.  
  4430. level.PObjective2 = 1 // Locate Security Office Key
  4431. level.PObjective3 = 0 // Gain Access To Security Room
  4432.  
  4433. thread global/universal_script.scr::PObjectiveComplete
  4434. waitForThread parm.previousthread
  4435.  
  4436. thread BankMissionComputer
  4437. thread global/universal_script.scr::StatusUpdated
  4438. waitForThread parm.previousthread
  4439.  
  4440. end // security_key_misscomp_thread
  4441.  
  4442.  
  4443. // security_room_entered_misscomp_thread:
  4444. /////////////////////////////////////////////////////////////////////////////
  4445. security_room_entered_misscomp_thread:
  4446.  
  4447. level.PObjective3 = 1 // Gain Access To Security Room
  4448. level.PObjective4 = 0 // Gain Access To The Vault
  4449.  
  4450. thread global/universal_script.scr::PObjectiveComplete
  4451. waitForThread parm.previousthread
  4452.  
  4453. thread BankMissionComputer
  4454. thread global/universal_script.scr::StatusUpdated
  4455. waitForThread parm.previousthread
  4456.  
  4457. end // security_room_entered_misscomp_thread
  4458.  
  4459.  
  4460. // vault_opened_misscomp_thread:
  4461. /////////////////////////////////////////////////////////////////////////////
  4462. vault_opened_misscomp_thread:
  4463.  
  4464. level.PObjective4 = 1 // Gain Access To The Vault
  4465.  
  4466. thread BankMissionComputer
  4467. thread global/universal_script.scr::SObjectiveComplete
  4468.  
  4469. thread BankMissionComputer
  4470. thread global/universal_script.scr::StatusUpdated
  4471. waitForThread parm.previousthread
  4472.  
  4473. end // vault_opened_misscomp_thread
  4474.  
  4475.  
  4476. // security_doors_unlocked_misscomp_thread:
  4477. /////////////////////////////////////////////////////////////////////////////
  4478. security_doors_unlocked_misscomp_thread:
  4479.  
  4480. level.SObjective1 = 1 // Unlock All Security Doors
  4481.  
  4482. thread BankMissionComputer
  4483. thread global/universal_script.scr::SObjectiveComplete
  4484. waitForThread parm.previousthread
  4485.  
  4486. end // security_doors_unlocked_misscomp_thread
  4487.  
  4488.  
  4489. // hostages_saved_misscomp_thread:
  4490. /////////////////////////////////////////////////////////////////////////////
  4491. hostages_saved_misscomp_thread:
  4492.  
  4493. level.SObjective2 = 1 // Minimize Hostage Casualties
  4494.  
  4495. thread BankMissionComputer
  4496. thread global/universal_script.scr::SObjectiveComplete
  4497. waitForThread parm.previousthread
  4498.  
  4499. end // hostages_saved_misscomp_thread
  4500.  
  4501.  
  4502. // hostages_killed_misscomp_thread:
  4503. /////////////////////////////////////////////////////////////////////////////
  4504. hostages_killed_misscomp_thread:
  4505.  
  4506. level.SObjective2 = 2 // Minimize Hostage Casualties
  4507.  
  4508. thread BankMissionComputer
  4509. thread global/universal_script.scr::SObjectiveFailed
  4510. waitForThread parm.previousthread
  4511.  
  4512. end // hostages_killed_misscomp_thread
  4513.  
  4514.  
  4515. // BankMissionComputer:
  4516. /////////////////////////////////////////////////////////////////////////////
  4517. BankMissionComputer:
  4518. %missioncon conlayout "xv -74 yv 76 fc 0.6 0.6 1 1 string \"Banking On Destruction\""
  4519. %missioncon conapplayout "xv -120 yv 60 fc 0.4 0.4 0.8 1 string \"Primary Objective(s):\""
  4520.  
  4521. level.PObjective1 ifequal 0 %missioncon conapplayout "xv -118 yv 48 spicn b_blank 0.5 0.5 xv -116 yv 48 fc 0.7 0.7 0.7 1 string \" Disable Hostile Threat\""
  4522. level.PObjective2 ifequal 0 %missioncon conapplayout "xv -118 yv 36 spicn b_blank 0.5 0.5 xv -116 yv 36 fc 0.7 0.7 0.7 1 string \" Locate Security Office Key\"" 
  4523. level.PObjective3 ifequal 0 %missioncon conapplayout "xv -118 yv 24 spicn b_blank 0.5 0.5 xv -116 yv 24 fc 0.7 0.7 0.7 1 string \" Gain Access To Security Room\""
  4524. level.PObjective4 ifequal 0 %missioncon conapplayout "xv -118 yv 12 spicn b_blank 0.5 0.5 xv -116 yv 12 fc 0.7 0.7 0.7 1 string \" Gain Access To The Vault\"" 
  4525. level.PObjective5 ifequal 0 %missioncon conapplayout "xv -118 yv 0 spicn b_blank 0.5 0.5 xv -116 yv 0 fc 0.7 0.7 0.7 1 string \" Capture Mancini\"" 
  4526.  
  4527. level.PObjective1 ifequal 1 %missioncon conapplayout "xv -118 yv 48 spicn b_checked 0.5 0.5 xv -116 yv 48 fc 0.2 0.2 0.2 1 string \" Disable Hostile Threat\""
  4528. level.PObjective2 ifequal 1 %missioncon conapplayout "xv -118 yv 36 spicn b_checked 0.5 0.5 xv -116 yv 36 fc 0.2 0.2 0.2 1 string \" Locate Security Office Key\"" 
  4529. level.PObjective3 ifequal 1 %missioncon conapplayout "xv -118 yv 24 spicn b_checked 0.5 0.5 xv -116 yv 24 fc 0.2 0.2 0.2 1 string \" Gain Access To Security Room\""
  4530. level.PObjective4 ifequal 1 %missioncon conapplayout "xv -118 yv 12 spicn b_checked 0.5 0.5 xv -116 yv 12 fc 0.2 0.2 0.2 1 string \" Gain Access To The Vault\"" 
  4531. level.PObjective5 ifequal 1 %missioncon conapplayout "xv -118 yv 0 spicn b_checked 0.5 0.5 xv -116 yv 0 fc 0.2 0.2 0.2 1 string \" Capture Mancini\"" 
  4532.  
  4533. level.PObjective1 ifequal 2 %missioncon conapplayout "xv -118 yv 48 spicn b_notchecked 0.5 0.5 xv -116 yv 48 fc 0.2 0.2 0.2 1 string \" Disable Hostile Threat\""
  4534. level.PObjective2 ifequal 2 %missioncon conapplayout "xv -118 yv 36 spicn b_notchecked 0.5 0.5 xv -116 yv 36 fc 0.2 0.2 0.2 1 string \" Locate Security Office Key\"" 
  4535. level.PObjective3 ifequal 2 %missioncon conapplayout "xv -118 yv 24 spicn b_notchecked 0.5 0.5 xv -116 yv 24 fc 0.2 0.2 0.2 1 string \" Gain Access To Security Room\""
  4536. level.PObjective4 ifequal 2 %missioncon conapplayout "xv -118 yv 12 spicn b_notchecked 0.5 0.5 xv -116 yv 12 fc 0.2 0.2 0.2 1 string \" Gain Access To The Vault\"" 
  4537. level.PObjective5 ifequal 2 %missioncon conapplayout "xv -118 yv 0 spicn b_notchecked 0.5 0.5 xv -116 yv 0 fc 0.2 0.2 0.2 1 string \" Capture Mancini\"" 
  4538.  
  4539. level.PObjective1 ifequal 3 %missioncon conapplayout "xv -116 yv 48 fc 0.2 0.2 0.2 1 string \" ----------------------------\""
  4540. level.PObjective2 ifequal 3 %missioncon conapplayout "xv -116 yv 36 fc 0.2 0.2 0.2 1 string \" ----------------------------\"" 
  4541. level.PObjective3 ifequal 3 %missioncon conapplayout "xv -116 yv 24 fc 0.2 0.2 0.2 1 string \" ----------------------------\""
  4542. level.PObjective4 ifequal 3 %missioncon conapplayout "xv -116 yv 12 fc 0.2 0.2 0.2 1 string \" ----------------------------\"" 
  4543. level.PObjective5 ifequal 3 %missioncon conapplayout "xv -116 yv 0 fc 0.2 0.2 0.2 1 string \" ----------------------------\"" 
  4544.  
  4545. %missioncon conapplayout "xv -120 yv -16 fc 0.4 0.4 0.8 1 string \"Secondary Objective(s):\""
  4546. level.SObjective1 ifequal 0 %missioncon conapplayout "xv -118 yv -28 spicn b_blank 0.5 0.5 xv -116 yv -28 fc 0.7 0.7 0.7 1 string \" Unlock All Security Doors\"" 
  4547. level.SObjective2 ifequal 0 %missioncon conapplayout "xv -118 yv -40 spicn b_blank 0.5 0.5 xv -116 yv -40 fc 0.7 0.7 0.7 1 string \" Minimize Hostage Casualties\""
  4548.  
  4549. level.SObjective1 ifequal 1 %missioncon conapplayout "xv -118 yv -28 spicn b_checked 0.5 0.5 xv -116 yv -28 fc 0.2 0.2 0.2 1 string \" Unlock All Security Doors\"" 
  4550. level.SObjective2 ifequal 1 %missioncon conapplayout "xv -118 yv -40 spicn b_checked 0.5 0.5 xv -116 yv -40 fc 0.2 0.2 0.2 1 string \" Minimize Hostage Casualties\""
  4551.  
  4552. level.SObjective1 ifequal 2 %missioncon conapplayout "xv -118 yv -28 spicn b_notchecked 0.5 0.5 xv -116 yv -28 fc 0.2 0.2 0.2 1 string \" Unlock All Security Doors\"" 
  4553. level.SObjective2 ifequal 2 %missioncon conapplayout "xv -118 yv -40 spicn b_notchecked 0.5 0.5 xv -116 yv -40 fc 0.2 0.2 0.2 1 string \" Minimize Hostage Casualties\""
  4554.  
  4555. level.SObjective1 ifequal 3 %missioncon conapplayout "xv -116 yv -28 fc 0.2 0.2 0.2 1 string \" ----------------------------\""
  4556. level.SObjective2 ifequal 3 %missioncon conapplayout "xv -116 yv -40 fc 0.2 0.2 0.2 1 string \" ----------------------------\""
  4557.  
  4558. end // BankMissionComputer
  4559.  
  4560.  
  4561. // precache:
  4562. /////////////////////////////////////////////////////////////////////////////
  4563. precache:
  4564.  
  4565. cachesound impact/crates/crate3.wav
  4566. cachesound vehicle/helicopt/flyloop.wav
  4567. cachesound environment/cabinet/glasscab/latch12.wav
  4568. cachesound environment/levelsnds/bank/rvlv001.wav
  4569. cachesound impact/glass/glassbrk/mix1.wav
  4570. cachesound misc/bell.wav
  4571. cachesound environment/cabinet/drawer/cab11.wav
  4572. cachesound environment/cabinet/drawer/cab12.wav
  4573. cachesound environment/levelsnds/bank/bankdoo2.wav
  4574. cachesound impact/metal/drm2.wav
  4575. cachesound environment/doors/metal/mtldoor1.wav
  4576. cachesound misc/civmale/site1.wav
  4577. cachesound misc/civmale/beg1.wav
  4578. cachesound environment/doors/door1cls.wav
  4579. cachesound environment/doors/door1opn.wav
  4580. cachesound environment/computer/beeps/cmpbp1.wav
  4581. cachesound environment/computer/beeps/reject1.wav
  4582.  
  4583. end // precache
  4584.